mysql 的tinyint(1)

最近 小弟在使用mysql存取數據的時候發現的一個特別的狀況。就是某個庫表中的一個字段類型是tinyint(1),若是隻有兩個值, 分別是0 和1,在java程序中取出就是 對應false 和true。java

對此狀況,特地問了問度娘,發現這是mysql 數據庫的一個特性。tinyint類型的字段若是長度只有1,那麼取出時。默認會轉成false 和true ,在存的時候,也是同樣。若是存0和1以外的數字,也只會是1。mysql

因此,mysq 要存boolean 值,就使用tinyint(1)字段。0爲false  1爲true。sql

若是存0、一、二、三、四、五、六、七、8這種數字,就使用tinyint(4)字段。數據庫

若是非要取出tinyint(1)字段的0和1 這種數字,則須要在對應的字段取出時,加上*1便可程序

相關文章
相關標籤/搜索