不好意思,一个初级问题。请高手指教(50分)

  • 主题发起人 rickpasu
  • 开始时间
R

rickpasu

Unregistered / Unconfirmed
GUEST, unregistred user!
我在oracle数据库中通过的update语句,怎么在access数据库中不能通过。我怀疑对access数据
库的修改语句可能不是update语句。。。望指教。

语句为:with query5 do
begin
close;
sql.clear;
l:=n[m]-k;
s:='update fywh set money=:l where name='+''''+d[m]+'''';
sql.add(s);
parambyname('l').asfloat:=l;
execsql;
end;
l 实数型,n[m]为实数型数组,k为实数型,d[m]为字符型数组。
 
语句没有错误,可能是没有条件相符的记录。
 
可能和 Access 的關鍵字有關,這樣試試;
s:='update fywh set [money]=:l where [name]='''+d[m]+'''';
 
应该是DEN所说的意思,能否贴出错误提示信息呢?
 
错误信息是:[microsoft][ODBC Microsoft Access Ddriver] UPDATE 语句的语法错误。'.Process
stopped .Use stop or run to contiue.
 
改成 "

s:='update fywh set [money]=:l where [name]="'+d[m]+'"';
 
'update fywh set money=:l where name='+''''+d[m]+''''
语句是没错你试改一下这样来调试一下先.
'update fywh set money=100 where name='''+d[m]+''''
试一下有没有出错.最好连d[m]也换成一个实在的值来试.
 
s:='update fywh set [red]money=:l[/red] where name='+''''+d[m]+'''';

money=l
 
谢谢大家。问题解决了。jsxjd的答案是正确的。我还想问的是update语句在access的特定格式
是不是就是这样。和oracle好象有一些不一样。还要那些语句不一样呢?
 
顶部