sql语句求救(100分)

  • 主题发起人 主题发起人 lzhq
  • 开始时间 开始时间
L

lzhq

Unregistered / Unconfirmed
GUEST, unregistred user!
现查询一数据库,table1.dbf,有一域bh为字符串形,并为数字字符串.采用以下语句查询.
select *
from 'table1.dbf'
where bh like a //a /为一字符串
当a为'1','2','6','7','8'时都没问题,
可是当a为'3','4'时程序就没响应了
请指点迷津
 
没找到数据?
 
程序就没响应了??
返回了空集?
 
1.如a为变量语句应为:where bh like :a

2.我想你是要查找bh字段中类似于A的吧(模糊匹配),这样的话在语句前加上
a:=a+'%'或a:='%'+a;或a:='%'+a+'%';
如要求精确匹配请用where bh=:a
即like一般与%,?等通配符结合使用。
 
如果前面是“都没问题”,一定是返回了空集。
 
我使用就是
where bh like '3%'程序是没有响应了,返回的不会是空集.
因为数据表里有相应的数据.
用where bh like '2%'就没有问题.
不只是我的程序如此.我用sql explorer直接把sql语句写上也不行.它也没了响应.程序就死掉了
 
查查返回的sqlcode
 
可能是数据量比较大吧。
如果真的‘不只是我的程序如此.我用sql explorer直接把sql语句写上也不行.它也没了响应.程序就死掉了’
所以可以肯定与DELPHI客户程序无关,是你的服务器的问题了。
 
我使用的是vfp的库*.dbf
如果把它转为*.db就没有任何问题
 
我试过了,没有问题!
 
通过bde-odbc访问?
bde自己认不到vfp表啊
 
接受答案了.
 
后退
顶部