删除触发器以删除另一个数据库sql中另一个表中的行

时间:2015-06-09 18:14:27

标签: sql sql-server triggers delete-row

我有一个名为Fulcrum的数据库架构,其中有一个名为Orders的表,OrderNO, OrderDate, TenantID上有PK

我有一个名为XFer的桥数据库架构,其中我还有一个名为Orders的表,其中包含相同的字段名称但OrderNO, OrderDate, TenantID上没有键

我需要在Orders Xfer后面创建一个触发器,当我删除Fulcrum.dbo.Orders

中的行时删除XFer.dbo.Orders中的匹配行

谢谢

1 个答案:

答案 0 :(得分:2)

考虑到您使用Microsoft SQL Server语法创建此类触发器是:

CREATE TRIGGER [XFer].[dbo].[OrderDeleted]
ON [Xfer].[dbo].[Orders]
AFTER DELETE
AS
BEGIN

   DELETE FROM [Fulcrum].[dbo].[Orders] WHERE [Fulcrum].[dbo].[Orders].[OrderNO] IN (SELECT [XFer].[dbo].[Orders].[OrderNO] FROM DELETED)  

END

显然语法可能不完美,但这很接近你需要的。