如何使用sql语句参数化的添加记录(50分)

  • 主题发起人 主题发起人 ahai227
  • 开始时间 开始时间
A

ahai227

Unregistered / Unconfirmed
GUEST, unregistred user!
如何使用sql参数化添加记录
ccl为int xh为字符型
query3.sql为:
insert cc
(ccl,xh)
values(:ccl ,:xh)

Button4Click为:
query3.Close;
query3.parambyname('ccl').asinteger:=strtoint(edit3.text);
query3.parambyname('xh').asstring:=edit2.text;
query3.open;

出错信息为:invalide use of keyword.
taken:cc
(ccl,xh)
values(?)

请各位救命!!!
 
query3.sql应为:
insert into cc(ccl,xh)
values(:ccl ,:xh)

 
既然你是参数化添加记录,为什么还要写
query3.sql为:
insert cc
(ccl,xh)
values(:ccl ,:xh)

可以用:
query3.Insert;

query3.parambyname('ccl').asinteger:=strtoint(edit3.text);
query3.parambyname('xh').asstring:=edit2.text;
query3.post;
即可!
祝好运!


 
如下写即可:
query3.sql为:
insert into cc(ccl,xh) values(:ccl,:xh);

Button4Click为:
query3.Close;
query3.parambyname('ccl').asinteger:=strtoint(edit3.text);
query3.parambyname('xh').asstring:=edit2.text;
query3.ExecSQL;

注意最后一句不是query3.Open而是query3.ExecSQL;
还有你的SQL的insert语句也忘了写关键词into;
 
多人接受答案了。
 
后退
顶部