现在的位置: 首页 > 综合 > 正文

MySQL中的bit类型知道多少呢?(转)

2013年09月13日 ⁄ 综合 ⁄ 共 506字 ⁄ 字号 评论关闭

mysql bit 类型!你有什么更好的方法呢?

在mysql中如果存诸一种只有两种答应的数据,设置它的数据类型时,我们首先会想到bit ,它所占字符少,速度快,真的爽的不得了!当这数据插入这种数据类型中时,数值1会变所一个图标(像笑脸,用mysql客户端查看可观察到),而0会变所空白(估计忽略了),mysql但仍然是认识它们,所以在mysql下用sql查询没有任何问题,当是php并不公认识它,如果在页面中用取出的数据值与1 或0比较,结果会是false!

1在页面中输出显示为 'r', 而0为空白!

用ord()来测试可以得到它们的不同,

bit 类型1  ord() 为:   1  //'r'的acsii码

bit 类型0  ord() 为:   0  

不知道各位还有什么办法没,知道多一点更好!

另:为什么mysql会将bit 类型存储成这样?mssql不会发生该类变化!

用bit处理比较麻烦,查询的时候想当做整形处理可以这样
SELECT CAST(`myBitField` AS signed) FROM test
这样在php里就可以与整形数比较了.
【上篇】
【下篇】

抱歉!评论已关闭.