以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]SQLSERVER数据库bit类型默认值判断  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=183896)

--  作者:crazyfengyu
--  发布时间:2022/11/18 9:03:00
--  [求助]SQLSERVER数据库bit类型默认值判断
请问 sql server数据库新增一个 是否外部订单    bit 类型,新增行的时候未对其进行赋值,使用下面语句查询不到

DataTables("订单").select("[是否外部订单] = False")
DataTables("订单").select("[是否外部订单] <> True")

但是在系统内对该列数据进行修改后,上面的语句又可以查询到了。请问是写法有问题吗?应该如何解决?

--  作者:crazyfengyu
--  发布时间:2022/11/18 9:06:00
--  
好像是新增的行是正确的,勾选框显示的空白,历史行的这一列是  蓝底色的勾选框,就无法判断。
--  作者:有点蓝
--  发布时间:2022/11/18 9:09:00
--  
因为数据库里的逻辑列是空值。正常在foxtable新增的行,逻辑列都是false值,数据库里是0。所以如果自己使用sql插入数据的,必须给逻辑列赋值0
--  作者:zhutangxin
--  发布时间:2022/11/18 9:17:00
--  
定义表结构的时候,设置bit型的字段默认值为0, 如下述示例中 isClosed字段

create table tb (
id int identity(1,1) not null primary key
, ....
, isClosed bit not null default 0
, ....

)