Hola, siguiendo con nuestra guía de SQL hoy vamos a ver las FOREIGN KEY, LLAVES SECUNDARIAS o CLAVE EXTERNA
Con lo antes dicho aclaramos que la columna o columnas marcadas como FOREIGN KEY, solo podrán tener valores que ya existan en la PRIMARY KEY (llave primaria) de la otra tabla.
Ejemplo:
En el ejemplo anterior el ID_USUARIO es FOREIGN KEY de la tabla FACTURAS.
CREATE TABLE tabla
{
nombre_columna tipo_de_dato FOREIGN KEY REFERENCES la_tabla_dos (columna_de_la_tabla_dos)
}
Ejemplo usando las tablas usuarios y facturas:
CREATE TABLE USUARIOS
{
ID_USUARIO int NOT NULL PRIMARY KEY,
NOMBRE varchar(255),
}
CREATE TABLE FACTURAS
{
ID_FACTURA int NOT NULL PRIMARY KEY,
DESCRIPCION varchar(255),
ID_USUARIO int FOREIGN KEY REFERENCES USUARIOS (ID_SUARIOS)
}
SQL - FOREIGN KEY, LLAVE SECUNDARIA o CLAVE EXTERNA
Un FOREIGN KEY es una columna o varias columnas que sirven para marcar cual es la llave primaria de otra tabla.Con lo antes dicho aclaramos que la columna o columnas marcadas como FOREIGN KEY, solo podrán tener valores que ya existan en la PRIMARY KEY (llave primaria) de la otra tabla.
Ejemplo:
TABLA USUARIOS |
TABLA FACTURAS |
En el ejemplo anterior el ID_USUARIO es FOREIGN KEY de la tabla FACTURAS.
SQL - Sintaxis de FOREIGN KEY
La sintaxis de las FOREIGN KEY son muy diferentes en cada tipo de base de datos.En ORACLE, ACCESS y SQLSERVER:
FOREING KEY GENERANDO UNA TABLA
CREATE TABLE tabla
{
nombre_columna tipo_de_dato FOREIGN KEY REFERENCES la_tabla_dos (columna_de_la_tabla_dos)
}
Ejemplo usando las tablas usuarios y facturas:
CREATE TABLE USUARIOS
{
ID_USUARIO int NOT NULL PRIMARY KEY,
NOMBRE varchar(255),
}
CREATE TABLE FACTURAS
{
ID_FACTURA int NOT NULL PRIMARY KEY,
DESCRIPCION varchar(255),
ID_USUARIO int FOREIGN KEY REFERENCES USUARIOS (ID_SUARIOS)
}
En MySQL:
FOREING KEY GENERANDO UNA TABLA
CREATE TABLE FACTURAS
{
FOREIGN KEY (NOMBRE_COLUMNA_TABLA) REFERENCES NOMBRE_TABLA_DOS (NOMBRE_COLUMNA_TABLA_DOS)
}
Borrar FOREING KEY:
ALTER TABLE tabla DROP CONSTRAINT columna_tabla
Ejemplo:
ALTER TABLE FACTURAS DROP DROP CONSTRAINT ID_USUARIO
Ejemplo usando las tablas usuarios y facturas:
CREATE TABLE USUARIOS { ID_USUARIO int NOT NULL,
NOMBRE varchar(255),
PRIMARY KEY (ID_USUARIO)
}
CREATE TABLE FACTURAS
{
ID_FACTURAS int NOT NULL,
DESCRIPCION varchar(255),
ID_USUARIO int not null,
PRIMARY KEY (ID_FACTURAS),
FOREIGN KEY (ID_USUARIO) REFERENCES USUARIOS (ID_USUARIO)
}
Borrar FOREING KEY:
ALTER TABLE tabla DROP FOREIGN KEY columna_tabla
Ejemplo:
ALTER TABLE FACTURAS DROP FOREIGN KEY ID_USUARIO
SQL - FOREIGN KEY LLAVE SECUNDARIA - Sintaxis de FOREIGN KEY
Reviewed by El lado oscuro de java
on
julio 03, 2014
Rating:
No hay comentarios: