SQLBulk Kopieren mit Trigger, der die Abfrage aktualisieren ausliest

sql sqlbulkcopy triggers

Frage

Ich habe Datensätze von Excel-Blatt zu SQL mit SQLBulkCopy .

Code läuft für mich gut.

Aber ich muss Trigger-basierte Einfügung auslösen.

In Trigger füge ich Datensätze in einer anderen Tabelle basierend auf Inserted

das funktioniert auch gut.

aber wenn ich überprüfe, dass eine andere Tabelle, die bereits diesen Datensatz hat, den ich versuche einzufügen und diesen Datensatz zu aktualisieren, dann funktioniert das nicht für mich.

Wie kann ich mein Problem lösen?

Akzeptierte Antwort

Verwenden Sie die Merge-Anweisung in Ihrem Trigger, wenn Sie SQL Server 2008 verwenden

Beispiel:

MERGE INTO dbo.Table1 AS t
USING dbo.inserted AS i
        ON t.id= i.id
WHEN MATCHED THEN
    UPDATE SET
      t.col1= i.col1,
      t.col2= i.col2
WHEN NOT MATCHED THEN 
      INSERT (col1, col2)
      VALUES (i.col1, i.col2)


Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow