sql server 触发器问题 我建立了多个触发器,只有第一个触发的触发器可以执行,之后的触发器执行不了
举例:table1(带有一个触发器),table2(带有一个触发器),table3两个触发器的功能都是在插入新数据后,更新或插入数据至table3执行过程:向table1...
举例:
table1(带有一个触发器),table2(带有一个触发器),table3
两个触发器的功能都是在插入新数据后,更新或插入数据至table3
执行过程:
向table1插入数据,触发器启动了,更新了table3,向table2插入数据,触发器没有启动,反之,也一样,若先执行table2的操作,则只触发table2的触发器,table1的触发器不启动
求助!!!
语法逻辑绝对没错! 展开
table1(带有一个触发器),table2(带有一个触发器),table3
两个触发器的功能都是在插入新数据后,更新或插入数据至table3
执行过程:
向table1插入数据,触发器启动了,更新了table3,向table2插入数据,触发器没有启动,反之,也一样,若先执行table2的操作,则只触发table2的触发器,table1的触发器不启动
求助!!!
语法逻辑绝对没错! 展开
展开全部
既然你说你的逻辑没有问题,那我按照你的逻辑 建立了一个简单的例子。能实现你的功能。
IF OBJECT_ID('TABLE1') IS NOT NULL
DROP TABLE TABLE1
GO
CREATE TABLE TABLE1
(cName NVARCHAR(20)
)
GO
IF OBJECT_ID('TABLE2') IS NOT NULL
DROP TABLE TABLE2
GO
CREATE TABLE TABLE2
(cName NVARCHAR(20)
)
GO
IF OBJECT_ID('TABLE3') IS NOT NULL
DROP TABLE TABLE3
GO
CREATE TABLE TABLE3
(cName NVARCHAR(20)
)
GO
CREATE TRIGGER UPDATE1
ON TABLE1 FOR INSERT
AS
BEGIN
INSERT INTO TABLE3
SELECT CNAME FROM INSERTED
END
GO
CREATE TRIGGER UPDATE2
ON TABLE2 明迹搭FOR INSERT
AS
BEGIN
INSERT INTO TABLE3
SELECT CNAME FROM 激拿INSERTED
END
GO
INSERT INTO TABLE1
SELECT 'AAA'
UNION ALL
SELECT 'AAAAA'
GO
INSERT INTO TABLE2
SELECT 'BBB'
UNION ALL
SELECT 'BBBBB'
SELECT * FROM TABLE3
可见,应该是你州茄的代码出现了问题, 你最好把T-SQL贴出来 才好帮你找到问题
更多追问追答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询