>데이터 베이스 >MySQL 튜토리얼 >SQL에서 외래 키 참조 동작을 변경하는 방법은 무엇입니까?

SQL에서 외래 키 참조 동작을 변경하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-09 08:32:12201검색

How to Change Foreign Key Referential Actions in SQL?

외래 키 참조 동작 수정

데이터베이스 설계에서는 부모 및 자식 테이블에서 작업을 수행할 때 동작을 정의하기 위해 적절한 참조 동작으로 외래 키 관계를 설정하는 것이 중요합니다. . "ON DELETE CASCADE"에서 "ON DELETE RESTRICT"로 전환하는 등 기본 참조 작업을 변경하려고 할 때 일반적인 쿼리가 발생합니다.

1단계: 기존 제약 조건 삭제

참조 작업의 첫 번째 단계는 다음 SQL 명령을 사용하여 현재 외래 키 제약 조건을 삭제하는 것입니다.

ALTER TABLE `table_name` DROP FOREIGN KEY `constraint_name`;

의 경우 예를 들어 'UserDetails'라는 테이블에 'Users' 테이블을 참조하는 외래 키 제약 조건 'FK_User_id'가 있는 경우 이 제약 조건을 삭제하는 명령은 다음과 같습니다.

ALTER TABLE `UserDetails` DROP FOREIGN KEY `FK_User_id`;

2단계: 수정된 새 제약 조건 생성 Action

기존 제약 조건을 삭제한 후 원하는 참조 동작으로 새 제약 조건을 생성할 수 있습니다. 다음 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"와 같은 선호하는 참조 작업을 사용합니다.

예를 들어 "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;

이 두 단계를 수행하면 외래 키 참조 동작을 효과적으로 변경하여 다음과 같은 경우 적절한 동작을 보장할 수 있습니다. 데이터베이스의 테이블 간의 관계를 관리합니다.

위 내용은 SQL에서 외래 키 참조 동작을 변경하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.