SQL 외래 키 키워드
외래 키
제약 조건 은 FOREIGN KEY
두 테이블을 함께 연결하는 데 사용되는 키입니다.
FOREIGN KEY는 다른 테이블의 PRIMARY KEY를 참조하는 한 테이블의 필드(또는 필드 모음)입니다.
CREATE TABLE의 SQL FOREIGN 키
다음 SQL은 "Orders" 테이블이 생성될 때 "PersonID" 열에 FOREIGN KEY를 생성합니다.
MySQL:
CREATE TABLE Orders
(
OrderID int NOT NULL,
OrderNumber int NOT NULL,
PersonID int,
PRIMARY KEY (OrderID),
FOREIGN KEY (PersonID) REFERENCES Persons(PersonID)
);
SQL 서버/오라클/MS 액세스:
CREATE TABLE Orders
(
OrderID int NOT NULL PRIMARY KEY,
OrderNumber int NOT NULL,
PersonID int FOREIGN KEY REFERENCES Persons(PersonID)
);
FOREIGN KEY 제약 조건의 이름을 지정하고 여러 열에 대한 FOREIGN KEY 제약 조건을 정의하려면 다음 SQL 구문을 사용하십시오.
MySQL/SQL 서버/오라클/MS 액세스:
CREATE TABLE Orders
(
OrderID int NOT NULL,
OrderNumber int NOT NULL,
PersonID int,
PRIMARY KEY (OrderID),
CONSTRAINT FK_PersonOrder FOREIGN KEY (PersonID)
REFERENCES Persons(PersonID)
);
ALTER TABLE의 SQL FOREIGN 키
"Orders" 테이블이 이미 생성된 경우 "PersonID" 열에 대한 FOREIGN KEY 제약 조건을 생성하려면 다음 SQL을 사용하십시오.
MySQL/SQL 서버/오라클/MS 액세스:
ALTER TABLE Orders
ADD FOREIGN KEY (PersonID)
REFERENCES Persons(PersonID);
FOREIGN KEY 제약 조건의 이름을 지정하고 여러 열에 대한 FOREIGN KEY 제약 조건을 정의하려면 다음 SQL 구문을 사용하십시오.
MySQL/SQL 서버/오라클/MS 액세스:
ALTER TABLE Orders
ADD CONSTRAINT FK_PersonOrder
FOREIGN KEY (PersonID)
REFERENCES Persons(PersonID);
외래 키 제약 조건 삭제
FOREIGN KEY 제약 조건을 삭제하려면 다음 SQL을 사용합니다.
MySQL:
ALTER TABLE Orders
DROP FOREIGN KEY FK_PersonOrder;
SQL 서버/오라클/MS 액세스:
ALTER TABLE Orders
DROP CONSTRAINT FK_PersonOrder;