Ms sql 2005 中的bit 数据类型

Posted BrokenIce

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ms sql 2005 中的bit 数据类型相关的知识,希望对你有一定的参考价值。

bit 
整型数据 1、0 或 NULL(在表中的表现形式)。 

注释: 
不能对 bit 类型的列使用索引。 

Microsoft? SQL Server? 优化用于 bit 列的存储。如果一个表中有不多于 8 个的 bit 列,这些列将作为一个字节存储。 

bit值类型可以取值为 1 (true )、0 或 NULL 的整数数据类型。 
当用C#语句插入数据,需要插入true或false,读取出来显示的也是true和false,插入到数据库时true就变成1,非true就变成0;
当你直接打开表向这一列中插入数据是就需要插入true或false  ,即表现值 
当你用sql语句插入数据的时候该列就插入0(false)或1(true),0,1即实际值 
这里插入非0数据,自动转换为1 ,没有插入时默认null 
insert into boy values(‘lijiash9‘,‘beijing‘,23,9) true 
insert into boy values(‘lijiash00‘,‘beijing‘,23,0) false 
insert into boy values(‘lijiash111‘,‘beijing‘,23,1) true 
insert into boy values(‘lijiash null‘,‘beijing‘,23,null) 出错 

当你在查询分析其中用select语句读取这个表中的这一列数据时该列数据显示的是0或1 

当你在C#等应用程序中调用sqlserver2005存储过程是返回的结果集中这一列的值是true或false 

在数据库中存放的是0/1/NULL,自己用SQL转:   
    
  select   case   字段   when   1   then   ‘是‘   when   0   then   ‘否‘   else   ‘空‘   end   from   表 

























以上是关于Ms sql 2005 中的bit 数据类型的主要内容,如果未能解决你的问题,请参考以下文章

sql bit类型赋值

将 char 数据类型转换为 datetime 数据类型导致 SQL Server 2005 中的 datetime 值超出范围

为MS SQL 2005加入一个用户admin

将现有 SQL Server 2005 数据库中的数据类型 varchar 更改为 nvarchar。有啥问题吗?

从 Ms Access Mdb 文件获取数据到 sql server 2005 的最佳方法

MS SQL Server 2005 - 存储过程“自发中断”