Ver Mensaje Individual
  #2  
Antiguo 16-06-2008
Avatar de RolphyReyes
RolphyReyes RolphyReyes is offline
Miembro
 
Registrado: ago 2004
Ubicación: Santo Domingo
Posts: 285
Reputación: 20
RolphyReyes Va por buen camino
Smile

Saludos.

A manera de consejo busca referencia sobre la normalización de BD para que entiendas mejor el concepto de clave foránea.

La clave foránea consiste básicamente en mantener una integridad de los datos.

Un ejemplo:

Código SQL [-]
CREATE TABLE TIPO_CLIENTE(
TIPO_ID INTEGER NOT NULL,
DESCRIPCION VARCHAR(50)
);

Digamos que TIPO_ID es clave primaria de la tabla TIPO_CLIENTE.

Código SQL [-]
CREATE TABLE CLIENTE(
CLIENTE_ID INTEGER NOT NULL,
TIPO_ID INTEGER NOT NULL,
NOMBRE VARCHAR(50)
);

Digamos que CLIENTE_ID es tu clave primaria de CLIENTE, si te fijas ahora tengo el campo TIPO_CLIENTE y es NOT NULL (condición para ser clave foránea) igual como esta en la tabla TIPO_CLIENTE. Ahora sí puedes definir la clave foránea en la tabla CLIENTE utilizando el campo TIPO_ID de la misma con la tabla TIPO_CLIENTE en su campo TIPO_ID (que es clave primaria, otro requisito).

Con esto estas poniendo una restricción de que los valores del campo TIPO_ID en la tabla CLIENTE deben de existir primero en la tabla TIPO_CLIENTE.

Espero haberte ayudado.

Hasta luego.
__________________
Gracias,
Rolphy Reyes
Responder Con Cita