模糊匹配问题
请先看下面的代码,pbscript--功能是:模糊查询,查询符合条件的值。表字段为:xsdm varchar(2),xsqc varchar(20),xsjc varchar(20)假如表中有一条记录是
11 中国语言文学系 中文系
现在我的查询条件是'%中%',那么结果应该会返回 中国语言文学系,但是他没有返回,请问哪里错了?
string mc
string dm0,qc0,jc0
int n,n_msgb
mc=trim(sle_mc.text)
if len(mc)=0 then
messagebox("系所查询","请输入查询条件(名称)!")
sle_mc.setfocus()
return
end if
mc="%"+mc+"%"
//mc='%'+mc+'%' //我也试了,也不对
//messagebox("oooo",mc)
declare cn_xsdm cursor for
select xsdm,xsqc,xsjc
from t_xsdm
where xsqc like :mc or xsjc like :mc; //我认为这里错了,但是不知道怎么改?
//where xsqc='中国语言文学系';
open cn_xsdm;
n=0;
do while true
fetch cn_xsdm into :dm0,:qc0,:jc0;
if sqlca.sqlcode=100 then
//messagebox("jj",sqlca.sqlerrtext)
if n=0 then
messagebox("系所查询","没有符合条件的系所记录!")
else
messagebox("系所查询","符合条件的系所记录已经查询完毕!")
end if
exit
end if
sle_dm0.text=dm0
sle_qc0.text=qc0
sle_jc0.text=jc0
n=n+1
messagebox("系所查询","这是第"+string(n)+"条符合条件的系所记录!")
n_msgb=messagebox("系所查询","继续显示其他符合条件的系所记录吗?",Question!,YesNo!,1)
if(n_msgb=2) then
exit
end if
loop
close cn_xsdm;
sle_dm0.text=""
sle_qc0.text=""
sle_jc0.text=""
sle_mc.text=""
sle_mc.setfocus()