Normalmente, un error ocurre cuando trata de ejecutar un
INSERT
o UPDATE
en un
registro que viole la clave primaria, clave única o clave
foránea. Si usa un motor transaccional como
InnoDB
, MySQL automáticamente deshace el
comando. Si usa un motor no transaccional, MySQL para de
procesar el comando en el registro en el que ocurre el error y
deja sin procesar el resto de registros.
Si desea ignorar este tipo de violaciones de claves, MySQL
permite la palabra clave IGNORE
para
INSERT
y UPDATE
. En este
caso, MySQL ignora cualquier violación de clave y continúa
procesando el siguiente registro. Consulte
Sección 13.2.4, “Sintaxis de INSERT
”. See Sección 13.2.10, “Sintaxis de UPDATE
”.
Puede obtener información acerca del número de registro
insertados o actualizados realmente con la función de la API
de C mysql_info()
. Consulte
Sección 24.2.3.32, “mysql_info()
”. A partir de MySQL 4.1 puede usar
el comando SHOW WARNINGS
. Consulte
Sección 13.5.4.22, “Sintaxis de SHOW WARNINGS
”.
De momento, sólo las tablas InnoDB
soportan claves foráneas. Consulte
Sección 15.6.4, “Restricciones (constraints) FOREIGN KEY
”. El soporte
para claves foráneas para tablas MyISAM
está previsto para implementarse en MySQL 5.1.
Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a mysql-es@vespito.com.