Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
1.16.3
-
None
Description
Processor PutDatabaseRecord is generating incomplete SQL statement when MERGE statement type for ORACLE12+.
It isn't considering all Update Keys.
I'm getting this SQL:
MERGE INTO table USING (SELECT ? CASO, ? REFERENCIA_NOME, ? CASO_REFERENCIA_INDICA, 1 REFERENCIA_CODIGO FROM DUAL) n ON (table.CASO = n.CASO) WHEN NOT MATCHED THEN INSERT (CASO, REFERENCIA_NOME, CASO_REFERENCIA_INDICA, REFERENCIA_CODIGO) VALUES (n.CASO, n.REFERENCIA_NOME, n.CASO_REFERENCIA_INDICA, n.REFERENCIA_CODIGO) WHEN MATCHED THEN UPDATE SET table.REFERENCIA_NOME = n.REFERENCIA_NOME, table.CASO_REFERENCIA_INDICA = n.CASO_REFERENCIA_INDICA, table.REFERENCIA_CODIGO = n.REFERENCIA_CODIGO
Should be:
MERGE INTO table USING (SELECT ? CASO, ? REFERENCIA_NOME, ? CASO_REFERENCIA_INDICA, 1 REFERENCIA_CODIGO FROM DUAL) n ON (table.CASO = n.CASO AND table.REFERENCIA_CODIGO = n.REFERENCIA_CODIGO) WHEN NOT MATCHED THEN INSERT (CASO, REFERENCIA_NOME, CASO_REFERENCIA_INDICA, REFERENCIA_CODIGO) VALUES (n.CASO, n.REFERENCIA_NOME, n.CASO_REFERENCIA_INDICA, n.REFERENCIA_CODIGO) WHEN MATCHED THEN UPDATE SET table.REFERENCIA_NOME = n.REFERENCIA_NOME, table.CASO_REFERENCIA_INDICA = n.CASO_REFERENCIA_INDICA
Attachments
Issue Links
- links to