Inicio > MYSQL > Reemplazar registros en mysql

REEMPLAZAR REGISTROS EN MYSQL

04/08/2018MYSQL ME GUSTA

 

Existe una sentencia, que es una alternativa al INSERT INTO, en la que se diferencia en que si existe algún registro en la base de datos con el mismo valor para una clave primaria o única, se elimina el viejo y se crea el nuevo registro con los nuevos valores.REPLACE INTO funciona como INSERT INTO cuando los nuevos datos no afectan el campo definido como PRIMARY KEYen caso de que la tuviese, simo la tuviese se insertarían los datos como si se usase INSERT INTO. Ejemplo:


codigo   titulo         autor           precio
_______________________________________________
1 Don Quijote Cervantes 25.0
2 El aleph Borges 23.0
//Aparece un mensaje de error indicando que hay registros duplicados. insert into libros values(2,'Los miserables','Víctor Hugo',30.2);
//Usando "replace" la sentencia se ejecuta y aparece un mensaje indicando que se afectaron 2 filas, esto es porque un registr se eliminó y se ha creaod un registro nuevo. replace into libros values(2,'Los miserables','Víctor Hugo',30.2);


Si no se quiere usar REPLACE INTO se puede usar INTO INTO de la siguiente manera:

 INSERT INTO tabla (campo1, campo2) VALUES  ('value1', 'value2') ON DUPLICATE KEY UPDATE campo1=cmapo1;


 


Comentarios

No hay comentarios en este artículo.