我有一個連接到具有多個表的數據庫的web應用程序。使用外鍵刪除表中主鍵和不同表中相關行的表中的行
出於測試目的,我需要刪除表中的某一行。我使用的是以下行:
delete from EventsTable where Name = 'John's Party'
然而,運行此我得到了以下錯誤消息時:
DELETE語句衝突與基準約束「FK_dbo.People_dbo.EventsTable_EventId」 。衝突發生在數據庫「PlannerDatabase」,表「dbo.People」,列'EventId'中。
此,我認爲,是因爲外鍵的發生被捆綁在EventsTable一個主鍵,但我的問題是:
有沒有什麼辦法,用SQL代碼儘可能少,從EventsTable中刪除「John's Party」,並在其餘表中刪除與該方相關的所有行?
我使用SQL Server Management Studio中2012
你應該看看[堆棧溢出問題](http://stackoverflow.com/questions/6260688/how-do-i-use-cascade-delete-with-sql-server)。和[級聯刪除](http://www.techonthenet.com/sql_server/foreign_keys/foreign_delete.php) – Roberto