English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Uso e exemplo do keyword FOREIGN KEY SQL

Referência de Palavras-Chave SQL

FOREIGN KEY

A restrição FOREIGN KEY é crucial para a conexão entre duas tabelas.

FOREIGN KEY é um campo (ou conjunto de campos) em uma tabela que referencia a PRIMARY KEY de outra tabela.

SQL FOREIGN KEY em CREATE TABLE

Ao criar a tabela "PersonID", o seguinte SQL cria a FOREIGN KEY "Orders":

MySQL:

CREATE TABLE Orders
(
   
OrderID int NOT NULL,
OrderNumber int NOT NULL,
PersonID int,
PRIMARY KEY (OrderID),
   
FOREIGN KEY (PersonID) REFERENCES Persons(PersonID)
;

SQL Server / Oracle / MS Access:

CREATE TABLE Orders
(
   
OrderID int NOT NULL PRIMARY KEY,
OrderNumber int NOT NULL,
   
PersonID int FOREIGN KEY REFERENCES Persons(PersonID)
;

Para nomear a restrição FOREIGN KEY e definir FOREIGN KEY em várias colunas, use a seguinte sintaxe SQL:

MySQL / SQL Server / Oracle / MS Access:

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)
;

SQL FOREIGN KEY em ALTER TABLE

Para criar a restrição FOREIGN KEY "Orders" na coluna "PersonID" após a criação da tabela, use o seguinte SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Orders
ADD FOREIGN KEY (PersonID)
REFERENCES Persons(PersonID);

Para nomear a restrição FOREIGN KEY e definir FOREIGN KEY em várias colunas, use a seguinte sintaxe SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Orders
ADD CONSTRAINT FK_PersonOrder
FOREIGN KEY (PersonID)
REFERENCES Persons(PersonID);

Excluir Restrição FOREIGN KEY

Para excluir a restrição FOREIGN KEY, use o seguinte SQL:

MySQL:

ALTER TABLE Orders
DROP FOREIGN KEY FK_PersonOrder;

SQL Server / Oracle / MS Access:

ALTER TABLE Orders
DROP CONSTRAINT FK_PersonOrder;

Referência de Palavras-Chave SQL