Access 不能执行update 急!!!(50)

  • 主题发起人 主题发起人 xnfzy
  • 开始时间 开始时间
X

xnfzy

Unregistered / Unconfirmed
GUEST, unregistred user!
请教各位大侠:with ADOQuery1 do begin ADOquery1.Close; ADOquery1.SQL.Clear; ADOquery1.SQL.Add('UPDATE foods SET inmac=:inmac and stats=:stats where mac=:mac'); ADOquery1.Parameters.ParamByName('mac').Value:=edit4.Text; ADOquery1.Parameters.ParamByName('inmac').Value:=edit4.Text; ADOquery1.Parameters.ParamByName('stats').Value:='ok'; {showmessage(ADOquery1.Parameters.ParamByName('mac').Value); showmessage(ADOquery1.Parameters.ParamByName('inmac').Value); showmessage(ADOquery1.Parameters.ParamByName('stats').Value); //显示数据正常,就是不能更新} ADOquery1.ExecSQL; end为什么不没的更新Access表里面的内空!执行也没有提示错误!
 
只有一种可能,你的where mac=:mac这个条件不满足更新条件.你试一下去条件看看能不能更新就知道了.不要showmessage了.
 
你还可以试下一select * from foods where mac=:mac 看看能不能查出来,就知道你的条件对不对.
 
不用and来分隔,用逗号
 
inmac=:inmac and stats=:stats 错了inmac=:inmac,stats=:stats
 
'UPDATE foods SET inmac=:inmac [red]and [/red]stats=:stats where mac=:mac'改为'UPDATE foods SET inmac=:inmac [red], [/red]stats=:stats where mac=:mac'
 
UPDATE foods SET inmac=:inmac and stats=:stats where mac=:mac改为UPDATE foods SET inmac=:inmac,stats=:stats where mac=:mac
 
还有,就是注意设置3个参数的datatype
 
肯定是SQL语句写的问题,监视一个生产的SQL语句就知道问题出在那啦
 
后退
顶部