Tutorial SQL

INICIO SQL Introducción a SQL Sintaxis SQL Seleccionar SQL SQL Seleccionar Distinto SQL donde SQL y, o no Orden SQL por Insertar SQL en Valores nulos de SQL Actualización SQL Eliminar SQL SQL Seleccionar parte superior SQL mínimo y máximo Recuento de SQL, Promedio, Suma SQL como Comodines de SQL SQL en SQL entre Alias ​​SQL Uniones SQL Combinación interna de SQL Unión izquierda de SQL Unión derecha de SQL Unión completa de SQL Unión automática de SQL Unión SQL Grupo SQL por SQL teniendo SQL existe SQL Cualquiera, Todo SQL Seleccionar en Insertar SQL en Seleccionar Caso SQL Funciones nulas de SQL Procedimientos almacenados de SQL Comentarios SQL Operadores SQL

Base de datos SQL

SQL Crear base de datos Base de datos de caída de SQL Base de datos de copia de seguridad de SQL Crear tabla SQL Tabla desplegable de SQL Tabla de modificación de SQL Restricciones SQL SQL no nulo SQL único Clave principal de SQL Clave foránea de SQL Comprobación SQL Valor predeterminado de SQL Índice SQL Incremento automático de SQL Fechas SQL Vistas SQL Inyección SQL Alojamiento SQL Tipos de datos SQL

Referencias SQL

Palabras clave de SQL Funciones MySQL Funciones del servidor SQL Funciones de MS Access Referencia rápida de SQL

Ejemplos SQL

Ejemplos SQL Cuestionario de SQL Ejercicios SQL Certificado SQL

CLAVE EXTRANJERA SQL Palabra clave

❮ Referencia de palabras clave de SQL


CLAVE EXTERNA

La FOREIGN KEYrestricción es una clave que se utiliza para vincular dos tablas.

UNA CLAVE EXTERNA es un campo (o colección de campos) en una tabla que hace referencia a la CLAVE PRIMARIA en otra tabla.


CLAVE EXTERNA SQL en CREAR TABLA

El siguiente SQL crea una CLAVE EXTERNA en la columna "PersonID" cuando se crea la tabla "Pedidos":

mysql:

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

Servidor SQL/Oracle/MS Access:

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

Para permitir el nombramiento de una restricción FOREIGN KEY y para definir una restricción FOREIGN KEY en varias 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)
);

CLAVE EXTERNA SQL en ALTER TABLE

Para crear una restricción FOREIGN KEY en la columna "PersonID" cuando la tabla "Pedidos" ya está creada, use el siguiente SQL:

MySQL/SQL Server/Oracle/MS Access:

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

Para permitir el nombramiento de una restricción FOREIGN KEY y para definir una restricción FOREIGN KEY en varias 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);

DROP una restricción FOREIGN KEY

Para descartar una restricción FOREIGN KEY, use el siguiente SQL:

mysql:

ALTER TABLE Orders
DROP FOREIGN KEY FK_PersonOrder;

Servidor SQL/Oracle/MS Access:

ALTER TABLE Orders
DROP CONSTRAINT FK_PersonOrder;

❮ Referencia de palabras clave de SQL