Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/05/2014, 05:06
lolo435
 
Fecha de Ingreso: abril-2013
Mensajes: 36
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: ERROR: Error 1005: Can't create table

Cita:
Iniciado por quimfv Ver Mensaje
``COD_CLIENTE_P_TRABAJO`` no es único en clientes!!!

Yo definiria una PK simple en clientes (idCliente INT(11) autoinc) y un indice unico sobre `COD_CLIENTE_IMPUTACION`, `COD_CLIENTE_P_TRABAJO`.

La FK des de otras tablas la haria contra la PK simple.

(Porque defines los identificadores como DECIMAL(10,0), INT(10) es más simple i permite lo mismo.)

Como que `COD_CLIENTE_P_TRABAJO` no es unico? es una clave primaria, tiene que ser unico!!. No te he entendido muy bien :(

A ver detallo el problema.

La tabla clientes antes no tenia el `COD_CLIENTE_P_TRABAJO` es algo que le he tenido que añadir para otra aplicacion, que usara unicamente ese codigo ( pero tengo que tener una correspondencia entre los dos codigos por si lo necesito en un futuro)

Una vez añadido ese nuevo codigo en la tabla, he creado la tabla consumo_apple que unicamente aceptara codigos de clientes que esten definidos en la tabla clientes, concretamente los `COD_CLIENTE_P_TRABAJO`.

Lo que no entiendo es porque me da ese error en la fk al relacionar el campo codigo_filial de la tabla consumo_apple con el `COD_CLIENTE_P_TRABAJO` de la tabla clientes. El error esta ahi, pero no se cual es :(


Ya por probar he hecho la KF con la otra primary key de la tabla clientes COD_CLIENTE_IMPUTACION y si me deja!!! arggggg que le pasa a mi COD_CLIENTE_P_TRABAJO?? si lo defino igual que COD_CLIENTE_IMPUTACION!!!

Última edición por lolo435; 27/05/2014 a las 07:05