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

Uso y ejemplo del关键字 FOREIGN KEY en SQL

Referencia de palabras clave SQL

FOREIGN KEY

La restricción FOREIGN KEY es clave para unir dos tablas.

FOREIGN KEY es un campo (o conjunto de campos) en una tabla que referencia la PRIMARY KEY de otra tabla.

SQL FOREIGN KEY en CREATE TABLE

Al crear la tabla "PersonID", el siguiente SQL crea la restricción FOREIGN KEY "Orders" en la columna:

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 nombrar la restricción FOREIGN KEY y definir restricciones FOREIGN KEY en múltiples columnas, utilice la siguiente sintaxis 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 en ALTER TABLE

Para crear la restricción FOREIGN KEY "Orders" en la columna "PersonID" después de que se haya creado la tabla, utilice el siguiente SQL:

MySQL / SQL Server / Oracle / MS Access:

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

Para nombrar la restricción FOREIGN KEY y definir restricciones FOREIGN KEY en múltiples columnas, utilice la siguiente sintaxis SQL:

MySQL / SQL Server / Oracle / MS Access:

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

Eliminar la restricción FOREIGN KEY

Para eliminar la restricción FOREIGN KEY, utilice el siguiente SQL:

MySQL:

ALTER TABLE Orders
DROP FOREIGN KEY FK_PersonOrder;

SQL Server / Oracle / MS Access:

ALTER TABLE Orders
DROP CONSTRAINT FK_PersonOrder;

Referencia de palabras clave SQL