[阅读: 632] 2005-08-22 02:43:44
跟踪到delphi向后台提交的sql了:
exec sp_executesql N'UPDATE "db0001".."tb0001" SET "f3"=@P1 WHERE "f2"=@P2 AND "f3"=@P3', N'@P1 int,@P2 varchar(8),@P3 int', -3, 'abc', 0
f2好像是key,f3就是要修改的但是有缺省值的字段,delphi认为f3原来是0,现在要改为-3
但是实际上,数据库里因为缺省值是-1,它存的也是-1
所以,这个sql虽然成功执行,但是影响的记录数其实为0,即没有生效
ado据此而引发了异常
可能pcplayer讲的是对的。。。ado生成sql时,把 AND "f3"=@P3 去掉就好了。。。