Ver Mensaje Individual
  #2  
Antiguo 08-11-2011
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Hola,

Quiero suponer que donde escribiste

Código SQL [-]
ON DUPLICATE KEY UPDATE precio_actual = 368.42;

en realidad es

Código SQL [-]
ON DUPLICATE KEY UPDATE precio_actual = 1368.42;

de lo contrario, no entiendo cuál es el valor de actualización.

El manual de MySQL menciona el uso de la función values para la cláusula update para inserciones masivas. Quedaría algo así:

Código SQL [-]
INSERT INTO productos (codigo, detalle, proveedor, precio_actual, fecha_modificacion)
VALUES
  (001000005, 'TUBOS POLIETILENO 1/2"K10', 1, 368.42, '2011/11/08'),
  (001000006, 'OTRO PRODUCTO', 1, 512.26, '2011/11/10')
ON DUPLICATE KEY UPDATE precio_actual = VALUES(precio_actual);

// Saludos
Responder Con Cita