还是没找到错误,把代码和结果都写出来,请高手分析一下,(很简单的代码)
funnu 2003-10-16 02:12:14 做了一个dw,两张表一共选了5列,页面上有搜索按钮,代码如下
int n ,i
string zch,qymc
string dwrq,nbxh
string dqsj
dqsj=string(GDT_SYSTIME,'yyyy-mm-dd')//GDT_SYSTIME为全局变量,取系统时间
string ls_sql=' '
ls_sql=ls_sql+' where 1=1 '
if sle_zch.text<>''and not isnull(sle_zch.text) then
ls_sql=ls_sql+" and zch like '%"+trim(sle_zch.text)+"%'"
end if
if sle_qymc.text<>'' and not isnull(sle_qymc.text) then
ls_sql=ls_sql+" AND qymc like '%"+trim(sle_qymc.text)+"%'"
end if
ls_sql=ls_sql+' and qy_qydj_zs.nbxh=qy_wzczqk_zs.nbxh'
ls_sql=ls_sql+' and qy_wzczqk_zs.zfyj <> qy_wzczqk_zs.zfsj'
ls_sql=ls_sql+' and qy_wzczqk_zs.wfyj <> qy_wzczqk_zs.wfsj'
ls_sql=ls_sql+" and to_char(qy_wzczqk_zs.qxycz,'yyyy-mm-dd') >='"+dqsj+"'"
f_mess(ls_sql)
tab_1.tabpage_1.dw_1.setsqlselect(ls_sql)
tab_1.tabpage_1.dw_1.Retrieve()
跟踪ls_sql得到的结果是
where 1=1 and zch like '%111%' and qy_qydj_zs.nbxh=qy_wzczqk_zs.nbxh and qy_wzczqk_zs.zfyj <> qy_wzczqk_zs.zfsj and qy_wzczqk_zs.wfyj <> qy_wzczqk_zs.wfsj and to_char(qy_wzczqk_zs.qxycz,'yyyy-mm-dd') >='2003-10-16'
但是系统提示select error:无效sql