Tengo una tabla con una clave única para dos columnas:INSERT ... EN copia de la llave (no hacer nada)
CREATE TABLE `xpo`.`user_permanent_gift` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT ,
`fb_user_id` INT UNSIGNED NOT NULL ,
`gift_id` INT UNSIGNED NOT NULL ,
`purchase_timestamp` TIMESTAMP NULL DEFAULT now() ,
PRIMARY KEY (`id`) ,
UNIQUE INDEX `user_gift_UNIQUE` (`fb_user_id` ASC, `gift_id` ASC));
quiero insertar una fila en la mesa, pero si existe la clave, a ¡hacer nada! No quiero que se genere un error porque las claves existen.
sé que existe la siguiente sintaxis:
INSERT ... ON DUPLICATE KEY UPDATE ...
pero ¿hay algo como:
INSERT ... ON DUPLICATE KEY DO NOTHING
?
solo para agregar IGNORE después del INSERT, el resto de la sintaxis es el mismo? – ufk
@ufk: 'INSERT IGNORE' sin la parte' ON DUPLICATE KEY', p. 'INSERT IGNORE INTO xpo.user_permanent_gift (...) VALUES (...)' – BoltClock
Tenga en cuenta que INSERT IGNORE también ignora otros errores como fallas en la conversión de datos. – mjcopple