4
我知道這可以用外鍵完成,但我不能添加它們或當我插入新記錄時發生奇怪的事情。在這個數據庫中有很多存儲過程,我不知道他們做了什麼,因爲我對存儲過程一無所知。我希望有人可以幫我弄清楚一個觸發器,當我從產品表中刪除它時會刪除一個特定的ProductID。它也位於名爲CompanyLink,TargetLink和CategoryLink的表中。SQL Server觸發器從多個表中刪除一條記錄
從現在起,當我從產品表中刪除產品ID時,必須從插入到其中的其他3個表中手動刪除它。
我會質疑(SELECT top 1 ...)的存在,因爲SQL服務器觸發器是語句級別,並且如果DELETE語句從產品刪除多行,只有第一個將從子表中刪除。 –
這看起來並不像我想的那麼難。肯,除了SELECT top 1以外,你會推薦什麼? – Jamie
所以我有這樣的:CREATE TRIGGER dbo.ProductDeleted ON dbo.Product AFTER DELETE AS BEGIN DELETE FROM CompanyLink WHERE的ProductID =(選擇產品ID已刪除) DELETE FROM WHERE的TargetLink產品id =(SELECT的ProductID已刪除) DELETE FROM CategoryLink WHERE ProductID =(選擇產品編號FROM DELETED) END – Jamie