Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/09/2009, 09:31
mariosequeda
 
Fecha de Ingreso: noviembre-2008
Ubicación: En algún lugar del disco duro.
Mensajes: 95
Antigüedad: 15 años, 5 meses
Puntos: 0
Sonrisa evitar duplicidad en clave primaria doble de mysql

Saludos amigos tengo un problema y es que tengo una tabla con una llave primaria doble en mysql pero no puedo evitar que se introduzcan valores de la siguiente manera:

serial_cartucho | cod_cartucho

12345 | 67890
12345 | 678901

es decir yo creo la primera dupla con los valores 12345 | 67890 y despues quiero evitar que alguien cree la dupla 12345 | 678901 es decir si ya utilize el serial_cartucho con una combinacion de cod_cartucho debo evitar que se se repita el mismo serial_cartucho con otra combinacion de cod_cartucho, es posible hacerlo yo trate de estas dos formas y no fue posible

CREATE TABLE `mov_recargas` (
`serial_cartucho` varchar( 30 ) NOT NULL ,
`cod_cartucho` varchar( 30 ) NOT NULL ,
`nom_cli` varchar( 60 ) NOT NULL ,
`tipo_cartucho` varchar( 20 ) NOT NULL ,
`fecha_r` date NOT NULL ,
`marca_impresora` varchar( 30 ) NOT NULL ,
`ref_impresora` varchar( 30 ) NOT NULL ,
`uso_impresora` varchar( 20 ) NOT NULL ,
`obs` varchar( 100 ) NOT NULL ,
`valor` bigint( 20 ) NOT NULL ,
`qty` int( 20 ) NOT NULL ,
UNIQUE ( `serial_cartucho` , `cod_cartucho` )
)

CREATE TABLE `mov_recargas` (
`serial_cartucho` varchar( 30 ) NOT NULL ,
`cod_cartucho` varchar( 30 ) NOT NULL ,
`nom_cli` varchar( 60 ) NOT NULL ,
`tipo_cartucho` varchar( 20 ) NOT NULL ,
`fecha_r` date NOT NULL ,
`marca_impresora` varchar( 30 ) NOT NULL ,
`ref_impresora` varchar( 30 ) NOT NULL ,
`uso_impresora` varchar( 20 ) NOT NULL ,
`obs` varchar( 100 ) NOT NULL ,
`valor` bigint( 20 ) NOT NULL ,
`qty` int( 20 ) NOT NULL ,
CONSTRAINT pk_mov_recargas PRIMARY KEY ( `serial_cartucho` , `cod_cartucho` )
)

gracias de antemano por su ayuda.