FOREIGN KEY - это ключ, используемый для соединения двух таблиц вместе. Является полем (или набором полей) в одной таблице, которое ссылается на PRIMARY KEY в другой таблице.
Таблица, содержащая внешний ключ, называется дочерней таблицей, а таблица, содержащая ключ-кандидат, называется ссылочной или родительской таблицей.
SQL FOREIGN KEY в CREATE TABLE
Следующий SQL создает FOREIGN KEY в столбце «user_id» при создании таблицы «invoice»:
CREATE TABLE invoice (
invoice_id int NOT NULL,
number int NOT NULL,
user_id int,
PRIMARY KEY (invoice_id),
FOREIGN KEY (user_id) REFERENCES users(user_id)
);
Чтобы разрешить именовать ограничение FOREIGN KEY и определять ограничение FOREIGN KEY для нескольких столбцов, используйте следующий синтаксис SQL:
CREATE TABLE invoice (
invoice_id int NOT NULL,
number int NOT NULL,
user_id int,
PRIMARY KEY (invoice_id),
CONSTRAINT FK_UserInvoice FOREIGN KEY (user_id)
REFERENCES Users(user_id)
);
SQL FOREIGN KEY на ALTER TABLE
Чтобы создать ограничение FOREIGN KEY в столбце «user_id», когда таблица «invoice» уже создана, используйте следующее:
ALTER TABLE invoice
ADD FOREIGN KEY (user_id) REFERENCES Users(user_id);
Чтобы разрешить именовать ограничение FOREIGN KEY и определять ограничение FOREIGN KEY для нескольких столбцов, используйте следующий синтаксис:
ALTER TABLE invoice
ADD CONSTRAINT FK_UsersInvoice
FOREIGN KEY (user_id) REFERENCES Users(user_id);
DROP a FOREIGN KEY
Чтобы удалить ограничение FOREIGN KEY, используйте следующий:
ALTER TABLE invoice
DROP FOREIGN KEY FK_UsersInvoice;
0 комментариев