在TTAdoTable 的Filter 中同时用 or 和 and 为什么不可以!(30分)

D

dae

Unregistered / Unconfirmed
GUEST, unregistred user!
我在TTAdoTable 的Filter 中想要实现如下条件:
( C_LevelCode = 'a' or P_LevelCode = 'd') and (work_id = 'd')
直接用总是出错,请问该如何实现。后台数据库是ORACLE
 
大哥,你的条件语句是不是写错了?
 
?错在哪里?
 
(( C_LevelCode = 'a') or (P_LevelCode = 'd')) and (work_id = 'd')
 
delphi?说的对
多个条件一起判断时每个条件都需要独立起来的
 
这个我也试过,不过提示同样的错误:
变量类型不正确,或者不在可以接受的范围之内,要不就是与其他数据冲突。
单用其中的某个或某两个条件都好使,或者都用or或都用and也都好使,就是
or和and一起用不好使。
你们用的时候没出错吗???
 
换成
( C_LevelCode in ('a','d')) and (work_id = 'd')
行吗?
 
Adnil,不行的,我的条件必须的用or 和 and 的格式,
我看书上说可以这么用的,不明白为什么不好使!
 
(( C_LevelCode = 'a') and (work_id = 'd')) or ((P_LevelCode = 'd')) and (work_id = 'd'))
 
delphi?, 恩,这样是好使了,不过不明白为什么要这么麻烦呢,是必须的吗?
看来好象是必须的,能告诉我必须是这样用吗
 
好像是的吧!
pascal 或者其他语言在执行这种语句的时候有个优先顺序的,如果是像刚刚开始的那样写
delphi可能不能判别先执行谁吧!
 
就是感觉有点麻烦!

谢谢!
 
顶部