求救sql查询语句 ( 积分: 50 )

  • 主题发起人 主题发起人 softgem
  • 开始时间 开始时间
S

softgem

Unregistered / Unconfirmed
GUEST, unregistred user!
我用的是ACCESS数据库,表A中有一字段B,是“真/假”的布尔属性。我查询其为“真”时的SQL语句是这样写的:
select * from a where b = true
结果就提示出错,说是“语法错误 (操作符丢失) 在查询表达式 '(b = true)' 中”
请问该如何写啊?????急啊!!!!!
 
我用的是ACCESS数据库,表A中有一字段B,是“真/假”的布尔属性。我查询其为“真”时的SQL语句是这样写的:
select * from a where b = true
结果就提示出错,说是“语法错误 (操作符丢失) 在查询表达式 '(b = true)' 中”
请问该如何写啊?????急啊!!!!!
 
没什么不对的嘛.看看是不是其它的问题
 
这条语句已经是简单的SQL了,相信很多人都写过好几百遍了!
应该是其它地方有问题!
 
还不行,就用 b is true 试试。
 
可能是你的字段B有问题,也许它的默认值不是true or false,可能是1 or 0 呢?
 
对阿,很可能是1和0
 
select * from a where b
这样就可以了,因为B本身就是逻辑值
 
查询B为真时:
select * from a where b
查询B为假时:
select * from a where not b
 
如果是SQL 就是“0”和“1”,
ACCESS我就没试过了,
打开看看就行了
 
同意lwgygz的意见.
 
select * from a where b = 1 为真
select * from a where b = 0 为假
 
我用ADO连接试过,
select * from a where b = true 没有问题,(ACCESS 2000)可以选择出为真的纪录,你检查一下别的方面吧,比如忘记sQL.CLEAR了^_*
 
会不会是你充许字段为空值了呢
 
你首先要弄清楚b是什么!如果是一个布尔型得字段还可以,如果是一个表达式,那么就要看你的表达式是否为“真”值了!
 
谢谢各位,我已经解决了,正确的应该如下:
select * from a where = true
加一个"[]",这可能是ACCESS的特殊性吧.再次谢谢各位!
 

Similar threads

D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
875
DelphiTeacher的专栏
D
后退
顶部