制約の変更
SQL データベース内の既存の制約を更新する必要がある場合があります。このようなシナリオの 1 つは、既存の外部キー制約に ON DELETE CASCADE 句を追加することです。この句により、親テーブルから行が削除されると、子テーブル内の対応する行も自動的に削除されます。
制約の変更
概念に反して制約は変更できませんが、実際には、既存の制約を削除し、必要な変更を加えて再作成することで制約を変更できます。このプロセスを説明するために、ACTIVEPROG テーブルの制約 ACTIVEPROG_FKEY1 を考えてみましょう。
CONSTRAINT ACTIVEPROG_FKEY1 FOREIGN KEY(ActiveProgCode) REFERENCES PROGRAM(ActiveProgCode),
この制約に ON DELETE CASCADE 句を追加するには、次の手順に従います。
既存のものを削除する制約:
ALTER TABLE ACTIVEPROG DROP CONSTRAINT ACTIVEPROG_FKEY1;
必要な変更を加えて制約を再作成します:
ALTER TABLE ACTIVEPROG ADD CONSTRAINT ACTIVEPROG_FKEY1 FOREIGN KEY(ActiveProgCode) REFERENCES PROGRAM(ActiveProgCode) ON DELETE CASCADE;
これらの手順に従って、ON DELETE を含むように制約が正常に変更されました。 CASCADE 句。PROGRAM テーブルからレコードが削除されると、ACTIVEPROG テーブル内の対応するレコードも自動的に削除されます。
以上がON DELETE CASCADE の追加など、既存の SQL 制約を変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。