起步软件技术论坛-X3

 找回密码
 立即注册
搜索
楼主: rzport_lq0

变量绑定问题

[复制链接]
发表于 2009-10-26 16:49:44 | 显示全部楼层
这样子改造一下试试。
v_fiter := '''%|77|78|%''';
lQuery1.CommandText :='select fid from tperson where '+v_fiter+' like ''%|''+fid+''|%''';
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-26 16:57:30 | 显示全部楼层
不行,oracle报ORA-01722 :报无效的数字
回复 支持 反对

使用道具 举报

发表于 2009-10-26 16:59:33 | 显示全部楼层
没注意到你前面有单引号,此种方式肯定就行了。
lQuery1.CommandText :='select fid from tperson where :v_fiter like ''%|''+fid+''|%'' ';
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-26 17:10:50 | 显示全部楼层
v_fiter1:='77','88';   
    lQuery1.CommandText :='select fid from tperson where  :v_fiter like ''%|''+fid+''|%'' ';
    lQuery1.Params.ParamByName('v_fiter').AsString:=v_fiter1;

这样还是不行。没有查到类似这种用法。
回复 支持 反对

使用道具 举报

发表于 2009-10-26 17:17:29 | 显示全部楼层
老兄呀,这样用呀
v_fiter := '''%|77|78|%''';

我都试过了,没问题的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-26 17:25:18 | 显示全部楼层
方工,
能不能把你的代码贴全,我这是在是不行。
回复 支持 反对

使用道具 举报

发表于 2009-10-26 17:30:01 | 显示全部楼层
就是上面的代码:(不过我是用的标准数据集,应该是一样的吧)
v_fiter := '''%|77|78|%''';
lQuery1.CommandText :='select fid from tperson where :v_fiter like ''%|''+fid+''|%'' ';
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-26 17:34:40 | 显示全部楼层
有满足条件的数据,却查询不到数据,要不远程看下。
回复 支持 反对

使用道具 举报

发表于 2009-10-26 17:39:21 | 显示全部楼层
不用远程吧。我这边测试是通过的。
请楼主再查一下原因吧。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-10-27 09:45:21 | 显示全部楼层
方工,有结果吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-15 09:37 , Processed in 0.036553 second(s), 12 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表