Bueno hice lo que se supone se debe hacer
Código SQL:
Ver originalALTER TABLE `empleado`
DROP PRIMARY KEY,
ADD PRIMARY KEY (`id`, `expediente`, `codigo`, `dui`, `nit`);
La cuestión es que hoy ni el ID, ni nada es PK, acepta valores repetidos en todos los campos
pero si vuelvo a poner solo el ID como PK entonces si, solo me permite un valor único, o con cualquier campo que ponga como PK
Fui de guatemala a guatepeor
Alguna idea estimados.
[EDIT]
He estado haciendo pruebas y ya vi cual es el problema, la cosa es que como es una PK compuesta, la validacion se hace si y solo si todos los campos que comprenden la PK son iguales, ejem.
Código:
id exp nit
01 123 123 // Este es el primer registro
02 123 123 // Este registro se inserta aunque lleven el mismo NIT y EXP
01 123 123 // Este registro no se inserta por ser todos los campos idénticos al primer registro
Asi es como funciona, pero en mi caso no me ayuda, ya que mi id, expediente, nit, dui, codigo, no se deben repetir nunca
Alguna otra forma a parte de por cada elemento hacer in select a la base y si no hay uno igual seguir con el otro y asi los 5 hasta que en el ultimo pueda hacer el insert total de todos los campos ?? (solo aclarando, se puede hacer un select de esos 5 campos y si no hay resultado continuar de lo contrario enviar alert) para que no me lo saquen