Mysql中的bit类型

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ldb987/article/details/83312825

利用它可定义一个位变量,但不能定义位指针,也不能定义位数组。它的值是一个二进制位,不是0就是1,类似Boolean类型中的True和False。

值域
char为8位一个字节的数据类型,取值范围为 -128到+127。而bit只有1位,只能表示0和1两种值。通常bit定义的变量作为一个标志位用。

类型定义
例如一个数据为25,那么它就可以定义为char型、int型等。因为他们都在自己的值域内。同样一个在自己值域的数0和1就可以定义为bit型

插入
插入数据时,插入true,false,数据库会相应的转换成1,0。

更新
更新最常用的办法肯定是先查询判断再进行更新,这样就需要先查询一次,再执行更新.
如果不想进行查询,直接对它进行更新,每次得到更新前的相反值的话,可以使用一下方法:
1、substr函数
update anketo1 set fb = substring(‘10’,fb+1,1) WHERE id =5
2、直接取反
update anketo1 set fb = ~ fb WHERE id =5
3、用ABS取绝对值
update anketo1 set fb = abs(fb-1)

查询
查询数据时,得到的数据是0和1,而不是true或false。

猜你喜欢

转载自blog.csdn.net/ldb987/article/details/83312825