1. 程式人生 > >mysql中Tinyint(1)資料格式自動轉為boolean型別

mysql中Tinyint(1)資料格式自動轉為boolean型別

一次專案中資料庫使用Tinyint(1),實體類使用boolean,剛開始還好奇怎麼可以這樣儲存,

不過自己測試了一下,set屬性為true,資料庫欄位自動儲存為1,set屬性為false,資料庫欄位自動儲存為0

後來網上查了相關資料,整理如下:

1.資料

1.MYSQL資料庫無法直接儲存true跟false,將其存為Tinyint儲存為0和1,是比較常見的一種

2.MYSQL儲存與代表BOOLEAN值為TRUE,0代表FALSE,boolean在MySQL中型別tinyint(1)中,
MySQL有四個常量:true,false,TRUE,FALSE,它們代表1,0,1,0,

3.MySQL資料庫將欄位的資料型別BOOL/BOOLEAN預設地轉換成TINYINT(1);

4.儲存和查詢的時候,0會表現為false,其他的1,2,3…….,將會表現為true

5.Tinint它只佔用一個位元組,推薦0,1多的使用,但是使用enum不靈活,定義的型別如果是1及以上的就無法區分了

2.方案

儲存boolean型別的時候用Tinint(1),並且只用0和1,不要儲存其他值

資料庫格式為tinint,實體類定義為boolean型別,對於查詢增加操作mysql資料庫自動對應,0對應false,1對應true

相關推薦

mysqlTinyint(1)資料格式自動轉為boolean型別

一次專案中資料庫使用Tinyint(1),實體類使用boolean,剛開始還好奇怎麼可以這樣儲存, 不過自己測試了一下,set屬性為true,資料庫欄位自動儲存為1,set屬性為false,資料庫欄位自動儲存為0 後來網上查了相關資料,整理如下: 1.資料 1.MYSQL資

MySQL關於金額資料進行運算求和/整數時精度丟失/清空表資料,自增從1開始

關於MySQL的使用總結: 1.金額欄位型別為String時,進行求和運算 2.查詢DECIMAL型別資料小數點後精度缺失丟失為0的小數 3.清空表的資料,id自增從1開始的方法 1.金額欄位型別為String時,進行求和運算 之前

Mysql資料庫tinyint(1) 儲存數字時候取值為True、False解決辦法

boolean型別: 在Mysql中儲存boolean值時:會用1代表TRUE,0代表FALSE,因為boolean在MySQL裡的型別為tinyint(1) 遇到mysql資料庫儲存欄位型別為tin

如何在ROS使用PCL—資料格式1

在ROS中點雲的資料型別 在ROS中表示點雲的資料結構有: sensor_msgs::PointCloud      sensor_msgs::PointCloud2     pcl::PointCloud<T> 關於PCL在ros的資料的結構,具體的介紹可查 看

mysqltinyint、smallint、mediumint,int 和bigint 的區別

符號 sig 次方 mysql 無符號 big mysq bit http 1 bytes = 8 bit ,一個字節最多可以代表的數據長度是2的8次方即-128到127,無符號從 0 到 255 的整型數據。 TINYINT[(M)]

MySQL的簡單資料查詢

查詢: 一:查詢所有資料 select * from Info 查所有資料 select Code,Name from Info 查特定列 二:根據條件查 select * from Info where Code='p001' 一個條件查詢 select * from Info where Cod

MySql啟用InnoDB資料引擎的方法

1、儲存引擎是什麼?   Mysql中的資料用各種不同的技術儲存在檔案(或者記憶體)中。這些技術中的每一種技術都使用不同的儲存機制、索引技巧、鎖定水平並且最終提供廣泛的不同的功能和能力。通過選擇不同的技術,你能夠獲得額外的速度或者功能,從而改善你的應用的整體功能。這些不同的技術以及配套的相關功能

mysql多種插入資料的語句

此為博主(yjclsx)原創文章,如若轉載請標明出處,謝謝! mysql中常用的三種插入資料的語句 insert into表示插入資料,資料庫會檢查主鍵,如果出現重複會報錯;  replace into表示插入替換資料,需求表中有PrimaryKey,或者uniq

mysqlint(1)int後面的數字(簡單介紹)

你可能知道int(1)這個長度1並不代表允許儲存的寬度,但對這個長度也沒有真正研究過到底代表什麼。 下面連結是mysql資料型別的儲存和範圍: http://www.runoob.com/mysql/mysql-data-types.html 我們拿int型別舉例: in

MySQL——5.MySQL支援的資料型別簡介

1.資料都儲存在資料庫中的資料表中。 2.這節課學習資料表的相關操作。 3.資料庫就好比一個excel表 。一個sheet就相當於一個數據庫,excel就相當於一個管理軟體。在sheet中新增一個表格,就相當於在資料庫中建立一個數據表

MySQL刪除重複資料只保留一條

用SQL語句,刪除掉重複項只保留一條 在幾千條記錄裡,存在著些相同的記錄,如何能用SQL語句,刪除掉重複的呢  1、查詢表中多餘的重複記錄,重複記錄是根據單個欄位(peopleId)來判斷 SELECT * FROM people WHERE pe

Python對MySQL讀取的資料進行json化

對MySQL中讀取的資料進行json化 資料格式: ((cluster1,db1,tb1), (cluster1,db1,tb2), (cluster1,db1,tb3), (cluster1,db2,tb3), (cluster2,db3,tb5), (cluster3,db4

Navicat for mysql的中文資料到頁面是亂碼 頁面新增的內容到資料庫也亂碼

MySQL資料庫亂碼問題 記錄一下:前幾天,在做一個ssm專案,然後出現了資料亂碼,找了很久,才發現錯誤,只需要簡單的改動就可以啦 改動方法 mysql連線資料庫,後面加上即可 useUnico

如何在ROS使用PCL—資料格式

在ROS中點雲的資料型別 在ROS中表示點雲的資料結構有: sensor_msgs::PointCloud      sensor_msgs::PointCloud2     pcl::PointCloud<T> 關於PCL在ros的資料的結構,具

mysql去除重複資料之distinct用法

最近利用郭神的litepal建立了郵件客戶端的前端資料庫,然後實現最近聯絡人的顯示,需要在資料庫裡去查詢傳送人的暱稱和傳送人的地址兩個欄位,但發現litepal不支援distinct查詢,但可以通過原生的sql語句實現: select distinct fromaddress,fromname

JDBC(6)mysql的大資料處理

免費錄播jdbc視訊 JDBC操作 驅動可以不註冊 * 可以省略 Class.forName(driver); (高版本) * 原因:mysql-connector-java-5.1.22-bin.ja

mysql有重複資料建唯一索引

ALTER TABLE tableA ENGINE MyISAM; /*注意:修改表結構為MyISAM */ ALTER IGNORE TABLE tableA ADD UNIQUE INDE

辛星淺談mysql的元資料

       首先解釋一下什麼是元資料,所謂元資料,就是表示資料的資料,這些資料五花八門,總之,只要不是我們儲存到資料庫裡的資料,大多都可以理解為元資料。那麼我們如何來獲取這些元資料呢?       總的來說,有三種思路,第一種,各種show,第二種,各種select,第三

mysqltinyint、smallint、int

TINYINT ,欄位型別,如果設定為UNSIGNED型別,只能儲存從0到255的整數,不能用來儲存負數。 TINYINT 型的欄位如果不設定UNSIGNED型別,儲存-128到127的整數。 通常,為了節省空間,應該儘可能的使用最小的整型資料。一個TINYINT型資料只

MYSQL支援的資料型別及取值範圍

DATE、TIME 和 TEAR 型別  MySQL用 DATE 和 TEAR 型別儲存簡單的日期值,使用 TIME 型別儲存時間值。這些型別可以描述為字串或不帶分隔符的整數序列。如果描述為字串,DATE 型別的值應該使用連字號作為分隔符分開,而 TIME 型別的值應該使用冒號作為分隔符分開。   需要注意的