`

SQL Server中bit数据类型应用

阅读更多

在 SQL Server 中,用来处理判断flag的字段,使用 bit类型。在使用过程中有几点需要注意的:

1、bit 与 SQL Server 的整型和数字数据相似的数字数据,但 bit 列只能存储 0 和 1。

2、在插入、修改 bit 数据时,使用 0 或 1 ,而不是 false 或 true,bit 字段放在 where 查询条件中也是这样。

3、利用 RecordSet 将 bit 字段中的数据取出来后,它是 boolean 类型,而不是数字类型,即在判断时应该使用 if rs("bitField") then,而不是 if rs("bitField")=1 then。

 

Transact-SQL参考文档上说:

-------------------------------------
bit
整型数据 1、0 或 NULL。

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

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

bit值类型可以取值为 1 (true )、0 或 NULL 的整数数据类型。

当你直接打开表向这一列中插入数据是就需要插入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   表

分享到:
评论

相关推荐

    SQL SERVER 数据类型详解

    SQL SERVER 数据类型详解 对于初学着比较有帮助

    SQL数据类型和范围(SQLServer,MySql,Access)

    Microsoft Access、MySQL 以及 SQL Server 所使用的数据类型和范围。 SQL Server 数据类型 Character 字符串 数据类型 描述 存储 char(n) 固定长度的字符串。最多 8,000 个字符。 n varchar(n) 可变长度的...

    dbForge Studio 2023 for SQL Server Enterprise 6.5.1 x64【亲测官网最新版】

    截止到目前(2023-08-16)官网最新版本,本次新增功能如下: 添加了对 GENERATE_SERIES 和 OPENQUERY 关系运算符的支持 新增支持LEFT_SHIFT、RIGHT_SHIFT、BIT_COUNT、...修复了数据编辑器中错误地指示缺少 SQL Server

    数据库迁移指导SQL SERVER 2008向ORACLE 11G

    数据库迁移指导SQL SERVER 2008向ORACLE 11G

    sql server的一个有趣的bit位运算分享

    一个很有趣的问题发生了,我们发现在Sql Server中的bit类型的数据-1可以表示1,于是我们可以将上面的语句改成: update category set visible=visible-1 where id=1 呵呵:当然也可以这样写了:update category

    数据库编程期末答疑,卷子讲解,SQL server相关操作讲解,如有侵权请联系删除

    如下是一个简化的员工考勤应用E-R图,请在SQL Server中创建名为YQKG的数据库,包括两个数据文件,一个日志文件,文件名按SQL Server对象命名规范定义,数据文件按10%的比例增长,数据库定义完成后输入如下样本数据。...

    SQL SERVER 数据类型详解补充2

    bit 数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可能值的数据,如Yes 或No、True 或Fa lse 、On 或Off int 整型 int 数据类型可以存储从- 231(-2147483648)到231 (2147483 647)之间...

    SQLServer2008查询性能优化 2/2

    4.8.3 BIT数据类型列上的索引 136 4.8.4 作为一个查询处理的CREATE INDEX语句 136 4.8.5 并行索引创建 136 4.8.6 在线索引创建 137 4.8.7 考虑数据库引擎调整顾问 137 4.9 小结 137 第5章 数据库引擎调整顾问...

    SQLServer2008查询性能优化 1/2

    4.8.3 BIT数据类型列上的索引 136 4.8.4 作为一个查询处理的CREATE INDEX语句 136 4.8.5 并行索引创建 136 4.8.6 在线索引创建 137 4.8.7 考虑数据库引擎调整顾问 137 4.9 小结 137 第5章 数据库引擎调整顾问...

    sqlserver自定义函数

    更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。 语法 sp_rename [ @objname = ] 'object_name' , [ @newname = ] 'new_name' [ , [ @objtype = ] 'object_type' ] --假设要处理的表名为...

    如何在SQLSERVER中快速有条件删除海量数据

    1.SQLSERVER数据库改bit类型为 not Boolean(即,true改成false;false改成true) 例:update 表 set bit字段=bit字段-1最近有个朋友问我,他说他在SQLSERVER删除几百万到几千万数据是显的很慢,帮他分析了一下,提...

    access 转 sql server DB_CreateSqlEV1.06 CooSel2.0 CreateSQL

    对access来说是错误的,不等同于SQLserver中的(''),导入程序对此自动修正 V1.05找了很多论坛和整站数据库作了测试,都成功导入 程序生成从 Access2000 MDB 数据库到 SQL server的升迁脚本(表结构和数据) 包括默认...

    SQL Server中实现二进制与字符类型之间的数据转换

    问题描述:在SQL Server 数据库中,如何实现二进制数据与字符串数据之间的直接转换? 一定会有人立马反问我:为什么不在程序中使用 C# 或者 JAVA 或者 C++ 来处理这个业务呢?我的回答是:这个我知道,也已经实现了...

    SQL Server系统调优解决方案

    例如:如果应用程序执行的一个查询经常检索某一日期范围内的记录,则使用聚集索引可以迅速找到包含开始日期的行,然后检索表中所有相邻的行,直到到达结束日期。这样有助于提高此类查询的性能。同样,如果对从表中...

    Access转SQL2000

    对access来说是错误的,不等同于SQLserver中的(''),导入程序对此自动修正 V1.05找了很多论坛和整站数据库作了测试,都成功导入 程序生成从 Access2000 MDB 数据库到 SQL server的升迁脚本(表结构和数据) 包括默认...

    ImportSQL V1.4

    2. 仅供参考使用,目前支持int,datetime, varchar,char, nchar,nvarchar, image , smallint, bit等数据类型的数据导出。binary类型的数据导出功能因测试环境所 限,暂未测试。 3. 支持多...

    CooSel2.0 CreateSQL V1.05(1.06??)

    对access来说是错误的,不等同于SQLserver中的(''),导入程序对此自动修正 V1.05找了很多论坛和整站数据库作了测试,都成功导入 程序生成从 Access2000 MDB 数据库到 SQL server的升迁脚本(表结构和数据) 包括默认...

    mss2mysql数据库sqlserver迁移mysql

    使用mss2sql生产数据库定义,在用navicat做数据迁移。mss2mysql生产的表定义需要稍微改动下,如mssql datetime类型默认保存到毫秒,mysql需要定义datetime(3),bit 类型转成mysql要换成tinyint。还可能遇到字符编码...

Global site tag (gtag.js) - Google Analytics