我在query的sql中用到了一个参数num,但程序运行时总是提示 "query1: paramter 'num' not found",但用静态的sql语句就

J

jnshy

Unregistered / Unconfirmed
GUEST, unregistred user!
我在query的sql中用到了一个参数num,但程序运行时总是提示 "query1: paramter 'num' not found",但用静态的sql语句就没问题,应该怎么做才对呢?(50分)<br />我在query的sql中用到了一个参数num,但程序运行时总是提示 "query1: paramter 'num' not found",
但用静态的sql语句就没问题,应该怎么做才对呢?打开query控件的params属性,也不能添加参数。
我的语句是: query1.sql.add('select * from data where id= :num');
 
打开前必须对参数赋值:

query1.params('num').asstring:='123';
 
query1.sql.add('select * from data where id=:num');
query1.paramByName('num').asstring:='123';
Open;
 
query1.sql.add('select * from data where id=:num');
query1.params[0].value:='123';
Open;
搞定!
 
动态加的sql语句中的参数也必须动态赋值,就在在添加sql语句后再设置参数值.如果你在设计
时没有在query的属性面板中为sql属性添加语句或语句中没有参数,你再它的参数属性中也没有
办法设置参数值,但如果在设计期你添加了sql语句并且其中有参数的话,这时你在属性面板中的
params参数中就可以设置相应的参数值了.
 
………………
query1.sql.add('select * from data where id=:num');
query1.params[0].value:='123';
query1.Prepare;
query1.Open;
 
快些結貼吧,樓上的都對

多管閒事的家伙,樓主勿怪
 
多人接受答案了。
 
顶部