28/12/2011, 07:03
|
| Moderador criollo | | Fecha de Ingreso: noviembre-2007 Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años Puntos: 2658 | |
Respuesta: Duda con ON DUPLICATE KEY UPDATE SI el valor ya lo tienes en el momento de crear el UPDATE, simplemente haces el UPDATE condicionado en el WHERE. Supongo que eso lo sabes hacer.
Ahora bien, sin quieres enviar una sentencia tal que si existe, lo actualice, y si no exite lo inserte, para eso es REPLACE, que tiene la misma sintaxis del INSERT, pero hay algunas consideraciones:
- REPLACE reemplaza todo el registro, y no solo algunas columnas, lo que implica que para que funcione debes enviar todos los valores de los campos.
- Si reemplaza un registro, y no envías todos los datos, aquellas columnas con datos que no envíes serán llenadas con NULL, con lo que los datos existentes se perderán.
- REPLACE no genera warnings, por lo que no indicará si encontró o no algo ya existente. Simplemente lo remplazará.
¿Se entiende?
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |