delphi7中更新数据问题

abc985926652 2012-06-17 08:52:28
procedure TForm1.Button1Click(Sender: TObject);
begin

ADOQuery1.Close;
ADOQuery1.SQL.Clear;

ADOQuery1.SQL.Add('Update huizong SET snum=:a+b+c');
ADOQuery1.SQL.Add('select * from huizong where snum is null');

ADOQuery1.ExecSQL;

end;

end.
为什么我一执行就会失败呢
...全文
126 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
编程保姆 2012-06-18
  • 打赏
  • 举报
回复
新手就是新手,真搞笑
abc985926652 2012-06-17
  • 打赏
  • 举报
回复
谢谢五楼已经成功解决
Oraclers 2012-06-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
a,b,c是列名
[/Quote]
如果是列名,更新语句就不用传参数的。改为下列就行:
ADOQuery1.SQL.Add('Update huizong SET snum=a+b+c');
你的代码改成:
procedure TForm1.Button1Click(Sender: TObject);
begin

ADOQuery1.Close;
ADOQuery1.SQL.Clear;

ADOQuery1.SQL.Add('Update huizong SET snum=a+b+c');
ADOQuery1.ExecSQL;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from huizong where snum is null');
ADOQuery1.Open;

end;

end.
abc985926652 2012-06-17
  • 打赏
  • 举报
回复
a,b,c是列名
abc985926652 2012-06-17
  • 打赏
  • 举报
回复
怎么传值啊
Oraclers 2012-06-17
  • 打赏
  • 举报
回复
ADOQuery1.SQL.Add('Update huizong SET snum=:a+b+c');
:a是参数,需传值。
看上面的语句,b,c是字段,那么表中必须有b,c字段,且字段类型必须与参数类型能进“+”运算。
sloven 2012-06-17
  • 打赏
  • 举报
回复
a,b,c 是指参数么?没传值呢吧。

2,496

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧