有一个主表M,子表D,更新的目的表T
做了一个主表的修改型触发器,当修改主表字段State时,将子表D的数据全部新增到T中去
现在的问题是:在SqlServer中执行正确,但在Delphi中报如此错误:
Key column information is insufficient or incorrect. Too many rows were affected by update
应该是批量更新的问题,子表数据超过一条才会报错
触发器中的新增是这样写的
insert into T(...)
select ... from Inserted I inner join D on I.ID=D.ID
做了一个主表的修改型触发器,当修改主表字段State时,将子表D的数据全部新增到T中去
现在的问题是:在SqlServer中执行正确,但在Delphi中报如此错误:
Key column information is insufficient or incorrect. Too many rows were affected by update
应该是批量更新的问题,子表数据超过一条才会报错
触发器中的新增是这样写的
insert into T(...)
select ... from Inserted I inner join D on I.ID=D.ID
解决方案 »
- xmlhttp无法设置cookie
- 怎样在程序中判断SQL数据库是在本地还是在服务器上?
- 我用Delphi编写了一个指针数组的程序,编译无错,但运行时屏幕怎么一闪而过
- 急:错误提示“分布式事务已完成,请将会话登记到新事务或NULL事务中”
- ibserver.exe和ibguard.exe到底有什么区别?
- 第一次作打印报表:Delphi 7有没有带作打印报表的组件呀???(在线等待.....)
- 怎样判断dbgrid的ontitleclick事件中被click的是哪个column
- win98和winme如何使用SQL SERVER2000(桌面版)的全文检索功能。
- 如何检测打印机是否已经安装?
- 数据库用BDE,请问,用SQL语句如何输入日期条件?即,select * from aa where mydate = ???
- 如何从动态表中选择所需要的数据?
- 请问一下怎么解决不同对象的赋值问题
控件是:AdoQuery
代码:
with AdoQeury1 do
begin
Edit;
//这前此字段值为3
FieldByName('State').asinteger :=2;
Post;
end;