用char(1):可以表示字符或者数字,但是不能直接计算同列的值。存储消耗1个字节
用tinyint:只能表示数字,可以直接计算,存储消耗2个字节
用bit: 只能表示0或1,不能计算,存储消耗小于等于一个字节。
总结:
如果无扩展需求,仅仅表示2值逻辑的话, Bit 绝对是首选
如果有扩展需求,以后可能多余2个值,就用 tinyint
char不考虑,写代码时要带单引号,超麻烦
转:
MySql数据库类型bit等与JAVA中的对应类型
转载自https://blog.csdn.net/diyu122222/article/details/78951467
Java数据类型和MySql数据类型对应表
注 :
- bolb :
对于bolb,一般用于对图片的数据库存储,
原理是把图片打成二进制,然后进行的一种存储方式,
在java中对应byte[]数组。
- boolen
对于boolen类型,
在mysql数据库中,个人认为用int类型代替较好,
对bit操作不是很方便,尤其是在具有web页面开发的项目中,表示0/1,
对应java类型的Integer较好。
- decima
decimal列的声明语法是decimal(m,d)。
在mysql5.1中,参数的取值范围:m是数字的最大数(精度)。
其范围为1~65(在较旧的MySQL版本中,允许的范围是1~254)。d是小数点右侧数字的数目(标度)。
其范围是0~30,但不得超过M。说明:
float占4个字节,
double占8个字节,
decimail(M,D)占M+2个字节。
如DECIMAL(5, 2) 的最大值为9 9 9 9 . 9 9,因为有7 个字节可用。