with chaxunQuery do
begin
Close;
sql.clear;
sql.add('select Kc.库存编号,Spxxb.商品名称,Kc.商品编号,');
sql.add('Kc.入库登记单号,Kc.进价,Kc.数量,Kc.入库日期,');
sql.add('Kc.操作员编号 ');
sql.add(' from kc,spxxb ');
sql.add(' where Kc.商品编号=Spxxb.商品编号');
sql.add(' and Spxxb.商品名称 like :spmcstring');
parambyname('spmcstring').asstring := '%' + UpperCase(Trim(Edit9.Text)) + '%';
Open;
end; 1、KC为库存表,Spxxb为商品信息表
2、SQL语句的目的:当用户输入一个商品名称中包含的某个字符时可以实现模糊查询
3、Spxxb含有商品名称、商品编号等字段
4、KC含有库存编号、商品编号、入库登记单号、进价、数量等字段
5、此语句在SQL Explorer下测试可行,在Delphi编译可行,但是运行就出现错误。
请各位帮帮我,在此,先谢谢大家!
解决方案 »
- 参数不相容类型的问题,谁来帮我看看?
- 我要问一个关于Timage显示网络图片的问题和一个webbrowser保存图片的问题!!!!
- 在DEPHI中如何将ScriptErrorsSuppressed的属性添加到TWebBrowser上
- 用dspack采集到摄像头的帧后不知道如何用h263压缩解码,哪位高手请告知。
- 请问 怎样实现 三层的 服务程序 " scktsrvr.exe " 不登录 window 2000 server 也能启动 ??????急!!!!
- 从不连续的号码中找到最多不连续的数字
- 请问怎么在DELPHI中加载一个配置文件
- 高分求救!!!关于树节点保存成文件的问题.
- 高手莫笑:如何使用postmessage给一个memo发送paste消息
- 如何查询到 最近 的一个时间纪录?????(牛虻)
- 如何短时间对大量的原始采集数据处理并存库?敬听各位指教!
- cxGrid問題
你考虑这样试下..sql.add(' and Spxxb.商品名称 LIKE ''%'+UpperCase(Trim(Edit9.Text))+'%''');
parambyname('spmcstring').asstring := QuotedStr('%' + UpperCase(Trim(Edit9.Text)) + '%');
没见过这样写参数的。
sql.add(' and Spxxb.商品名称 like'+''''+ spmcstring+'''');
这样写吧,
我认为,上面这句是给SQL参数的。可是在这个SQL中参数还没创建啊。
在上面这句前加一句创建参数的语句。CreateParam
不知对不对!
sql 中 like '%xxx%' 你参数里面忘了加前后两个单引号了。
begin
Close;
sql.clear;
sql.add('select Kc.库存编号,Spxxb.商品名称,Kc.商品编号,');
sql.add('Kc.入库登记单号,Kc.进价,Kc.数量,Kc.入库日期,');
sql.add('Kc.操作员编号 ');
sql.add(' from kc,spxxb ');
sql.add(' where Kc.商品编号=Spxxb.商品编号');
sql.add(Format(' and Spxxb.商品名称 like %s', [QuotedStr('%' + UpperCase(Trim(Edit9.Text)) + '%')]));
Open;
end;