ホームページ >データベース >mysql チュートリアル >SQL で外部キー参照アクションを変更するにはどうすればよいですか?
データベース設計では、適切な参照アクションを使用して外部キー関係を確立し、親テーブルと子テーブルで操作を実行するときの動作を定義することが重要です。 。 「ON DELETE CASCADE」から「ON DELETE RESTRICT」に切り替えるなど、デフォルトの参照アクションを変更しようとするときに、一般的なクエリが発生します。
参照アクションの場合、最初のステップでは、次の SQL を使用して現在の外部キー制約を削除します。 command:
ALTER TABLE `table_name` DROP FOREIGN KEY `constraint_name`;
たとえば、'UserDetails' という名前のテーブルに、'Users' テーブルを参照する外部キー制約 'FK_User_id' がある場合、この制約を削除するコマンドは次のようになります:
ALTER TABLE `UserDetails` DROP FOREIGN KEY `FK_User_id`;
既存の制約を削除した後、必要な参照アクションを含む新しい制約を作成できます。次の SQL 構文を使用します。
ALTER TABLE `table_name` ADD CONSTRAINT `constraint_name` FOREIGN KEY (`foreign_key_column`) REFERENCES `referenced_table` (`primary_key_column`) ON DELETE <action>;
この構文では、
たとえば、「ON DELETE RESTRICT」アクションを使用して「UserDetails」テーブルに「FK_User_id」という名前の新しい制約を作成するには、SQL コマンド
ALTER TABLE `UserDetails` ADD CONSTRAINT `FK_User_id` FOREIGN KEY (`User_id`) REFERENCES `Users` (`User_id`) ON DELETE RESTRICT;
これらの 2 つの手順に従うことで、外部キーの参照アクションを効果的に変更でき、確実に実行できます。データベース内のテーブル間の関係を管理する際の適切な動作。
以上がSQL で外部キー参照アクションを変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。