Oracle - actualizar o insertar

Resuelto
camilla -  
 camilla -
Hola,
desde Oracle SQL Developer, quiero insertar una fila en una tabla si no existe, de lo contrario, solo hago una actualización en la fila. Aquí está la consulta que he utilizado:

UPDATE TABLE SET ATTRIBUT1= 'valor', ATTRIBUT2 = 'valor', ATTRIBUT3 = 'valor'
WHERE IDTABLE = 'valor'
IF SQL%ROWCOUNT=0 INSERT INTO TABLE (IDTABLE , ATTRIBUT1, ATTRIBUT2, ATTRIBUT3)
VALUES ('valor', 'valor', 'valor', 'valor')

Cuando ejecuto esta consulta, me da un error de Comando desconocido

Configuración: Windows 7 / Firefox 11.0

4 respuestas

camilla
 
Hola Heremion,

Gracias por responderme. De hecho, intenté con esta sintaxis pero tengo dos errores: nombre de tabla inválido y el otro comando desconocido.

Aquí he corregido mi consulta después de tu respuesta y esto es exactamente lo que he puesto:

UPDATE TABLE PERSONNE SET NOM= 'nom', PRENOM= 'prenom' WHERE IDPERSONNE= '01'
IF SQL%ROWCOUNT = 0 THEN INSERT INTO TABLE PERSONNE VALUES ('01', 'nom', 'prenom');
1