Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Eine Datenbank muss u. U. einen Einfüge- oder einen Updatevorgang ausführen, je nachdem, ob eine bestimmte Zeile in der Datenbank bereits vorhanden ist.
Ohne die MERGE
-Anweisung zu verwenden, können Sie folgendes in Transact-SQL verwenden:
UPDATE mytable SET col=@somevalue WHERE myPK = @parm
IF @@ROWCOUNT = 0
INSERT mytable (columns) VALUES (@parm, @other values)
Eine weitere Transact-SQL-Methode zum Implementieren eines Merges:
IF EXISTS (SELECT 1 FROM mytable WHERE myPK = @parm)
UPDATE....
ELSE
INSERT
Für eine systemintern kompilierte gespeicherte Prozedur
DECLARE @i int = 0 -- or whatever your PK data type is
UPDATE mytable SET @i=myPK, othercolums = other values WHERE myPK = @parm
IF @i = 0
INSERT....
Weitere Informationen
Migrationsprobleme bei nativ kompilierten gespeicherten Prozeduren
Von In-Memory OLTP nicht unterstützte Transact-SQL-Konstrukte.