>  기사  >  데이터 베이스  >  mysql에서 외래 키 관계를 삭제하는 방법

mysql에서 외래 키 관계를 삭제하는 방법

青灯夜游
青灯夜游원래의
2022-07-01 20:01:2010268검색

mysql에서는 DROP 키워드와 함께 ALTER TABLE 문을 사용하여 외래 키 관계(제약 조건)를 삭제할 수 있습니다. 구문은 "ALTER TABLE 데이터 테이블 이름 DROP FOREIGN KEY 외래 키 제약 조건 이름;"입니다. 테이블 수정(원래 테이블의 구조 변경)에 사용되며, "DROP FOREIGN KEY" 문을 추가한 후에는 수정 기능이 외래 키 관계(제약 조건) 삭제로 제한됩니다.

mysql에서 외래 키 관계를 삭제하는 방법

이 튜토리얼의 운영 환경: windows7 시스템, mysql8 버전, Dell G3 컴퓨터.

외래 키 관계(외래 키 제약 조건)는 테이블의 특수 필드로, 기본 키 제약 조건과 함께 자주 사용됩니다. 연결된 관계가 있는 두 테이블의 경우, 연결된 필드의 기본 키가 있는 테이블이 기본 테이블(부모 테이블)이고, 외래 키가 있는 테이블이 보조 테이블(자식 테이블)입니다.

외래 키는 마스터 테이블과 슬레이브 테이블 간의 관계를 설정하고, 두 테이블의 데이터에 대한 연결을 설정하고, 두 테이블의 데이터 일관성과 무결성을 제한하는 데 사용됩니다. 예를 들어, 과일 가판대에는 사과, 복숭아, 자두, 수박 네 가지 과일만 있는데, 과일을 사러 오면 사과, 복숭아, 자두, 수박만 선택할 수 있습니다. 구매하실 수 없습니다.

메인 테이블에서 레코드가 삭제되면 테이블의 해당 레코드도 그에 따라 변경되어야 합니다. 테이블에는 하나 이상의 외래 키가 있을 수 있으며, 외래 키는 null이 아닐 수 있습니다. 각 외래 키의 값은 기본 테이블의 기본 키의 특정 값과 같아야 합니다.

외래 키 제약 조건이 더 이상 테이블에 필요하지 않으면 테이블에서 삭제해야 합니다. 외래 키가 삭제되면 마스터 테이블과 슬레이브 테이블 간의 연결이 해제됩니다.

mysql에서 외래 키 관계(제약 조건)를 삭제하는 방법은 무엇입니까?

mysql에서는 DROP 키워드와 함께 ALTER TABLE 문을 사용하여 외래 키 관계(제약 조건)를 삭제할 수 있습니다.

외래 키 제약 조건을 삭제하는 구문 형식은 다음과 같습니다.

ALTER TABLE 数据表名 DROP FOREIGN KEY 外键约束名;
  • ALTER TABLE 문은 열 추가 또는 삭제, 원래 열 유형 변경, 열 또는 테이블 이름 바꾸기 등 원본 테이블의 구조를 변경하는 데 사용됩니다. , 등. ReDrop Foreign Key 문은 외부 키 관계를 삭제하는 데 사용됩니다. 예:

  • 데이터 테이블의 외부 키 제약 조건을 보려면 다음 문을 사용합니다. tb_emp2 키 제약 조건 fk_tb_dept1

    SHOW CREATE TABLE tb_emp2\G
    mysql> SHOW CREATE TABLE tb_emp2\G
    *************************** 1. row ***************************
           Table: tb_emp2
    Create Table: CREATE TABLE `tb_emp2` (
      `id` int(11) NOT NULL,
      `name` varchar(30) DEFAULT NULL,
      `deptId` int(11) DEFAULT NULL,
      `salary` float DEFAULT NULL,
      PRIMARY KEY (`id`),
      KEY `fk_tb_dept1` (`deptId`),
      CONSTRAINT `fk_tb_dept1` FOREIGN KEY (`deptId`) REFERENCES `tb_dept1` (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=gb2312
    1 row in set (0.12 sec)

mysql 비디오 튜토리얼


위 내용은 mysql에서 외래 키 관계를 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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