delphi 进行字段更改时报错

baidu_33630979 2016-01-05 10:38:16
procedure TForm1.Button2Click(Sender: TObject);
begin
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('update data0415 set qty_type=1 where number:='''+edit1.text+'''');
adoquery2.Open;
showmessage('已对账');
end;
end.


报错显示:不正常定义参数对象,或者提供了不一致或不完整的信息
...全文
241 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hills95 2016-01-09
  • 打赏
  • 举报
回复
许多初学者数据库操作‘’open"与"excute"分不清,":="与"="分不清,我就是
doloopcn 2016-01-05
  • 打赏
  • 举报
回复
你用open才有这样的提示吧 用excute才对
baidu_33630979 2016-01-05
  • 打赏
  • 举报
回复
引用 1 楼 doloopcn 的回复:
adoquery2.Open; 改为: adoquery2.Excute; 这个number是字符类型还是数值? adoquery2.SQL.Add('update data0415 set qty_type=1 where number:='''+edit1.text+''''); 如果是字符,改为这样吧: adoquery2.SQL.Add('update data0415 set qty_type=1 where number:='+QuotedStr(edit1.text)); 如果是数值: adoquery2.SQL.Add('update data0415 set qty_type=1 where number:='+edit1.text);
还麻烦一下 :我number 是字符型的 更改为这样 adoquery2.SQL.Add('update data0415 set qty_type=1 where number='+QuotedStr(edit1.text)); t提示 command text dose not rutern a result set
  • 打赏
  • 举报
回复
number:= -----------------------》 number=
doloopcn 2016-01-05
  • 打赏
  • 举报
回复
adoquery2.Open; 改为: adoquery2.Excute; 这个number是字符类型还是数值? adoquery2.SQL.Add('update data0415 set qty_type=1 where number:='''+edit1.text+''''); 如果是字符,改为这样吧: adoquery2.SQL.Add('update data0415 set qty_type=1 where number:='+QuotedStr(edit1.text)); 如果是数值: adoquery2.SQL.Add('update data0415 set qty_type=1 where number:='+edit1.text);
lwitvip 2016-01-05
  • 打赏
  • 举报
回复
1、 number:= SQL写法不对,应该直接number= 2、用excute替代Open

2,508

社区成员

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

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