Insert mit Merge fügt nicht ein

theuser233

Neuer Benutzer
Beiträge
1
Hallo Liebe Community,

Folgendes Szenario: Musste aus einer Excel-Wertetabelle SQL-Statements zum importieren der Daten "bauen". Daher habe ich einen MERGE INTO mit anschließendem INSERT genutzt, um doppelte Datensätze zu vermeiden, falls bereits Werte in der Tabelle existieren.

Beispiel-Statement:

MERGE INTO ERPSERVICE.RUECKENENTITY t USING
(SELECT r.NAME, r.KURZNAME, r.MANDANT_ID
FROM ERPSERVICE.RUECKENENTITY r WHERE r.NAME='offener Rücken' AND r.KURZNAME='or' AND r.MANDANT_ID=6) r
ON (t.NAME = r.NAME AND t.KURZNAME=r.KURZNAME AND t.MANDANT_ID = r.MANDANT_ID) WHEN NOT MATCHED THEN INSERT (ID, AKTIV, CREATED, LASTMODIFIED, NAME, SORT, CREATEDBY_ID, LASTMODIFIEDBY_ID, MANDANT_ID,KURZNAME) VALUES ((SELECT MAX(t.ID) FROM ERPSERVICE.RUECKENENTITY t)+1,1,CURRENT_TIMESTAMP,CURRENT_TIMESTAMP,'offener Rücken','offener Rücken',3,3,6,'or');

Dieser Datensatz existiert noch nicht in der Tabelle, allerdings wird nach ausführen des Befehls auch kein Merge durchgeführt, sprich der PLSQL-Developer sagt mir, dass 0 merges ausgeführt wurden. Weiß jetzt ehrlich nicht woran es liegt, da das Statement eigentlich richtig sein sollte.

Grüße,
theuser233
 
Werbung:
Zurück
Oben