sql server 2005数据库表bit字段问题

sql server 2005数据库表bit字段问题,第1张

这是SSMS(SQL Server Management Studio)对数据类型校验引起的,在SSMS里边编辑表中记录时,SSMS先要校验一下输入是否有误,bit类型对应.net中的boolean类型,而boolean类型有效值是true、false、null,直接输入0、1肯定通不过校验的。而如果执行语句INSERT的话,不需要经过SSMS的数据类型校验,SQL Server会将0、1隐式转换为false和true,执行INSERT语句是能正常插入记录的,用INSERT语句向bit类型列插入数据的时候,大于0的值都会被隐式转换为true。而实际内部存储bit类型列,只用1个bit来存储,也就是1个字节可以存储8个bit列。

Bit类型只有1和0两个值

SQL赋值:应该将它当做数字1和0;

程序调用:显示的却是True和False;

示例

在SQL语句中Bit的判断

示例表【table_a】,列【col1】类型为bit

--1、Where条件判断

select * from table_a where col1=1

--2、变量条件判断

declare @a as bit

set @a=1

if @a=0

    print '0'

else

    pringt '1'

在SQL Server中,布尔值用的数据类型是bit。

Bit称为位数据类型,其数据有两种取值:0和1,长度为1位。在输入0以外的其他值时,系统均把它们当1看待。这种数据类型常作为逻辑变量使用,用来表示真、假或是、否等二值选择。

创建时用法如下:

create table test

(id int,

flag bit)


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/56628.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-26
下一篇2023-02-26

发表评论

登录后才能评论

评论列表(0条)

    保存