Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/07/2015, 04:14
Lentorro
 
Fecha de Ingreso: agosto-2014
Mensajes: 30
Antigüedad: 10 años, 2 meses
Puntos: 0
Problema con clave ajena

Tengo por un lado mi tabla Clientes con sus campos correspondientes:

CREATE TABLE Clientes(
idClienteCHAR( 9 ) PRIMARY KEY ,
nombreCliente VARCHAR( 20 ) ,
primerApellidoCliente VARCHAR( 20 ) ,
segundoApellidoCliente VARCHAR( 20 ) ,
fechaNacimientoCliente DATE
)

Quiero crear la tabla ContactoCliente. Los registros de esta nueva tabla tendrán una clave primaria compuesta por dos campos. El primero el idCliente y el segundo el tipoContacto (movil, fijo, email, etc), además habrá un tercer campo con la dirección de contacto (el número de teléfono, email o lo que sea).


Create table ContactoCliente
(Fk_idCliente char(9),
tipoContacto varchar(8),
valorContacto varchar(15),
Constraint fk_Cliente foreign key(Fk_idCliente) references Clientes (idCliente),
primary key (Fk_idCliente, tipoContacto)
)

Mi problema es que no existe integridad referencial. Yo quiero que no sea posible crear un registro en la tabla contactoCliente a menos que Fk_idCliente ya exista en la tabla Clientes. No me funciona. Gracias de antemano.