帮忙看看这段东东出了什么问题
CREATE TRIGGER DIU
ON a
FOR DELETE,INSERT,UPDATE
AS
BEGIN
delete from B where Name =(select ID from deleted)
insert B(Name) select ID from inserted
update B
set P2 = substring((select me from inserted),2,len((select me from inserted))-2),
PD = substring((select dur from inserted),1,8)
from inserted where Name =(select ID from inserted)
END
CREATE TRIGGER DIU
ON HBC.dbo.media
FOR DELETE,INSERT
AS
DECLARE @TS1 varchar(80)
DECLARE @TS2 varchar(18)
DECLARE @TS3 varchar(18)
BEGIN
set @TS1 = (select ID from inserted)
set @TS2 = (select me from inserted)
set @TS3 = (select dur from inserted)
delete from B where Name =(select ID from deleted)
insert B(Name,P2,PD)
values(@TS1,
substring(@TS2,2,len(@TS2)-2),
substring(@TS3,1,8))
END
这两段代码都产生同一个错误
(我是在数据库里直接操作的,而不是通过什么软件改的)
添加、删除都正常,可是要Update就一定要先关闭数据集才行
如果我刚添加完一条(肯定已经添加完成了),然后马上再修改它,就会出现
“无法为更新集定位:一些值可能已在最后读取后改变”
谁知道该怎么办啊?