首页 > 其他专区 > Access >

Access与sql server在查询中处理BIT / BOOLEAN 逻辑字段不同之处

Access 2022-04-18 22:11:15

1.在Access中可以用下面的查询语句:
SELECT field FROM table WHERE boolField=TRUE
-- or
SELECT field FROM table WHERE boolField=FALSE
2.这两条语句在SQL Server中通不过,所以要改成下面的形式:
SELECT field FROM table WHERE bitField=1
-- or
SELECT field FROM table WHERE bitField=0
3.令人烦恼的是上面这两条语句在Access中也会出问题,因为Access把-1当作True,而不是1。在搞清楚了这个问题后,我们可以写出在两种环境中都能运行的查询语句:
SELECT field FROM table WHERE bitField<>0
-- or
SELECT field FROM table WHERE bitField=0


tmtony
我也是这么做的
当年花很多时间调错就是在这里, 常常是-1 和1 在捣鬼

huanghai
我的不知道怎么回事时用文本框的值等于选择框,结果是-1还是true什么的就知道了:)

zhuyiwen
只能这么做, 这是没有办法的事情, 两种语言定义的不一样


标签: AccessSQLServer查询处理BIT

office教程网 Copyright © 2016-2020 http://www.office9.cn. Some Rights Reserved. 苏ICP备20040415号-9