Por lo pronto, esto es imposible:
Cita: id_generales----- llave primaria
curp---------------- llave primaria
id_vacuna--------- llave primaria
dosis--------------- llave primaria
fecha_aplic
lote
clues
No pueden existir cuatro claves primarias en una tabla. Eso es imposible en cualquier DBMS porque es una restricción del modelo relacional (una PK es única, siempre).
Lo que
sí puede existir es una única clave primaria
compuesta por cuatro campos, y en ese caso la cosa se te complicará y mucho para hacer lo que pretendes.
de todos modos el temas es básico: No puedes hacer un UPDATE donde cambies una PK si al hacerlo intentas poner un valor que ya exista en la tabla.
Tengo la impresión de que no conoces mucho de los fundamentos de bases de datos...
Cita: lo que necesito hacer, es actualizar el campo id_vacuna segun los datos de fecha_aplic e id_vacuna...es decir...modificar el campo id_vacuna a "19" de todos aquellos registros que tengan una fecha mayor o igual que "2011-04-01"...(esto en fecha_aplic) y que en id_vacuna tengan un "8"...no se si me di a entender, pero creo que al ver la consulta me entenderan...
¿Estás seguro de que lo que debes hacer es
actualizar un registro existente?
¿No será que debes
insertar uno nuevo para la nueva vacunación?