展开全部
Bit称为位数据类型,其数据有32313133353236313431303231363533e78988e69d8331333433626466两种取值:0和1,长度为1位。在输入0以外的其他值时,系统均把它们当1看待。这种数据类型常作为逻辑变量使用,用来表示真、假或是、否等二值选择。
SQL Server中保存数据的一种类型,只能存储true/false,程序读取数据库出来之后的表现形式是true或者false,但是保存在数据库中的结构类型是0或者1,1表示true,0表示false。
用char(1):可以表示字符或者数字,但是不能直接计算同列的值。存储消耗1个字节。
用tinyint:只能表示数字,可以直接计算,存储消耗2个字节。
用bit: 只能表示0或1,不能计算,存储消耗小于等于一个字节。
总结:
如果无扩展需求,仅仅表示2值逻辑的话, Bit 绝对是首选。
如果有扩展需求,以后可能多余2个值,就用 tinyint。
char不考虑,写代码时要带单引号,比较麻烦。
扩展资料
SQL Server的整数数据类型分为:bit 、smallint 、int 、bigint。
1) Bit占1个字节的存储空间,只能用来存储1、0和NULL。对应于.NET FrameWork中的Boolean类型,对应C#中的bool类型。1与True对应,0与False对应。
Bit类型比较特殊,在SQL Server 2008中,使用SSMS可视工具给bit类型的列赋值时,需要输入True或False,而在查询数据时,则显示为1或0。而在使用SQL语句添加数据时,则需要使用1和0表示。
2) Smallint占2个字节的存储空间:smallint类型只能用来存储整数,范围为-2^15 (-32,768) 到 2^15-1 (32,767)。
Smallint对应于C#中的short类型,也对应着.Net Framework的System.Int16结构。
3) Int占4个字节的存储空间:int是最常用的整数类型,范围是-2^31 (-2,147,483,648) 到 2^31-1 (2,147,483,647)内的所有整数。
对应于C#中的int类型,也对应于.Net Framework的System.Int32结构。