3
3p
Unregistered / Unconfirmed
GUEST, unregistred user!
我使用ADO+SQL7.0,编写修改程序,前台更新一个表时,后台触发另一个表的插入被修改
的这个表的纪录,只要备更新的纪录的某个字段被改,假设更改T1,只要其字段c1被改,则
把该纪录插入到表T2,后台编写触发器如下:
create trigger xxxx on T1
as
insert T2 (c1) select a.c1 from inserted a,deleted b where a.c1<>b.c1
delphi中更新T1,如修改了c1,程序正常,如果没有修改c1,锦修改其他,则总是出现
“recoed changed by another user”,观察T1依然能更新,可总是出现这样的错,
如果触发器的Insert语句后还有其他的语句,则没有执行,也就是:失败!无论采用
Updatehwereall或updatekey,情况依然。该触发器在SQL中测试完全没问题。
尝试修改触发器测试:发觉where中含有"="就没事,如:
create trigger xxxx on T1
as
insert T2 (c1) select a.c1 from inserted a,deleted b where a.c1=b.c1
或
insert T2 (c1) select a.c1 from inserted a,deleted b where a.c1>=b.c1
不会出现错误
改成:
insert T2 (c1) select a.c1 from inserted a,deleted b where
not (a.c1=b.c1) 也不行。
高手们,please help me!我是在NT服务器单机中测试的
的这个表的纪录,只要备更新的纪录的某个字段被改,假设更改T1,只要其字段c1被改,则
把该纪录插入到表T2,后台编写触发器如下:
create trigger xxxx on T1
as
insert T2 (c1) select a.c1 from inserted a,deleted b where a.c1<>b.c1
delphi中更新T1,如修改了c1,程序正常,如果没有修改c1,锦修改其他,则总是出现
“recoed changed by another user”,观察T1依然能更新,可总是出现这样的错,
如果触发器的Insert语句后还有其他的语句,则没有执行,也就是:失败!无论采用
Updatehwereall或updatekey,情况依然。该触发器在SQL中测试完全没问题。
尝试修改触发器测试:发觉where中含有"="就没事,如:
create trigger xxxx on T1
as
insert T2 (c1) select a.c1 from inserted a,deleted b where a.c1=b.c1
或
insert T2 (c1) select a.c1 from inserted a,deleted b where a.c1>=b.c1
不会出现错误
改成:
insert T2 (c1) select a.c1 from inserted a,deleted b where
not (a.c1=b.c1) 也不行。
高手们,please help me!我是在NT服务器单机中测试的