Ver Mensaje Individual
  #1  
Antiguo 29-10-2008
noob noob is offline
Miembro
 
Registrado: sep 2008
Posts: 212
Reputación: 16
noob Va por buen camino
Insertar o modificar dependiendo de una condición

Me gustaría saber si se puede hacer esto.

Digamos que tengo una tabla Tabla1 con dos campos: Codigo y Cantidad y tengo los siguientes registros:

+--+--+
|1 |23|
|2 |12|
+--+--+


ahora sumo seis unidades a la cantidad del registro cuyo codigo es dos:

Código:
update Tabla1 set Cantidad = Cantidad + 6 where Codigo = 2;
+--+--+
|1 |23|
|2 |18|
+--+--+


pero si ese registro no existiera, por ejemplo:

+--+--+
|1 |23|
|3 |12|
+--+--+


y hago:

Código:
update Tabla1 set Cantidad = Cantidad + 6 where Codigo = 2;
me daría error. Lo que debería de hacer sería:

Código:
insert into Tabla1 values (2, 6);
Yo quiero generar una sentencia genérica que me sirva tanto si existe ese registro como si no. Algo así como:

Código:
if existe registro then
  update Tabla1 set Cantidad = Cantidad + 6 where Codigo = 2
else
  insert into Tabla1 values (2, 6);
Quiero saber si todo esto se puede hacer bajo código MySQL sin ayudarnos de código Delphi claro.

¿Es posible?

Última edición por noob fecha: 29-10-2008 a las 22:03:21.
Responder Con Cita