ユーザーを表すテーブルがあります。ユーザーが削除されると、次のようになります。
DELETE ステートメントが REFERENCE 制約と矛盾しています
どうやら、CASCADE DELETE
SQL Server で想像したほど簡単ではなく、オプションをテーブルに追加する必要があります。
CASCADE DELETE
問題は、オプションを追加する方法がわかりません。
私が使用している: SQL Server 2008。これを行う方法はありますか?
ユーザーを表すテーブルがあります。ユーザーが削除されると、次のようになります。
DELETE ステートメントが REFERENCE 制約と矛盾しています
どうやら、CASCADE DELETE
SQL Server で想像したほど簡単ではなく、オプションをテーブルに追加する必要があります。
CASCADE DELETE
問題は、オプションを追加する方法がわかりません。
私が使用している: SQL Server 2008。これを行う方法はありますか?
最初にこのマイクロソフトの記事をお読みください。私を読んでください。私は設計中に GUI を使用するので、SSMS で GUI を選択する方法を示します。
外部キーに追加される構文は「 ON DELETE CASCADE 」です。
グーグルALTER TABLE DROP CONSTRAINT
、その後ALTER TABLE ADD CONSTRAINT
:
簡単な例を次に示します。
CREATE TABLE A
(
ID INTEGER NOT NULL UNIQUE
);
CREATE TABLE B
(
ID INTEGER NOT NULL UNIQUE
CONSTRAINT fk__B__A
REFERENCES A (ID)
);
-- Oops! Forgot the CASCADE referential actions.
-- DROP the constraint then recreate it:
ALTER TABLE B DROP
CONSTRAINT fk__B__A;
ALTER TABLE B ADD
CONSTRAINT fk__B__A
FOREIGN KEY (ID)
REFERENCES A (ID)
ON DELETE CASCADE
ON UPDATE CASCADE;