Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/12/2012, 16:10
lumiz
 
Fecha de Ingreso: junio-2008
Mensajes: 98
Antigüedad: 15 años, 11 meses
Puntos: 2
update si existe, insert si no existe.

Hola Gente !
Como bien dice el titulo quiero realizar una consulta que realiza un update si existe el capo y un insert si no existe...
Realize 2 codigos segun la info que lei en internet pero me dice que tengo un error de sintaxis...

La tabla tiene la siguiente estructura:

user_id --- user_id_1 --- estado
(int) PKey --- (int) PKey --- (int)

El primer codigo que intento utilizar es:
Código SQL:
Ver original
  1. IF EXISTS(
  2.     SELECT * FROM confio
  3.     WHERE user_id = 1
  4.     AND user_id_1 = 14
  5. )
  6.         UPDATE confio
  7.             SET estado = 0
  8.             WHERE user_id = 1
  9.             AND user_id_1 = 14
  10. ELSE
  11.     INSERT confio
  12.         SET
  13.             estado = 1,
  14.             user_id = 1,
  15.             user_id_1 = 14
y me da "[Err] 1064 - You have an error in your SQL syntax; "

El segundo intento es:
Código SQL:
Ver original
  1. UPDATE confio
  2.             SET estado = 0
  3.             WHERE user_id = 1
  4.             AND user_id_1 = 14
  5. IF @@ROWCOUNT=0
  6.     INSERT confio
  7.         SET
  8.             estado = 1,
  9.             user_id = 1,
  10.             user_id_1 = 14

y el error es el mismo...

Aclaro que tanto las sentencias basicas de update, select e insert las estoy ejecutando bien ya que funcionan individualmente...

Que estoy escribiendo mal???

Gracias