In einer Anweisung :Nein.
In einer Transaktion :Ja
BEGIN TRANSACTION
DECLARE @DataID int;
INSERT INTO DataTable (Column1 ...) VALUES (....);
SELECT @DataID = scope_identity();
INSERT INTO LinkTable VALUES (@ObjectID, @DataID);
COMMIT
Die gute Nachricht ist, dass der obige Code auch garantiert atomar ist , und kann von einer Clientanwendung mit einer SQL-Zeichenfolge in einem einzigen Funktionsaufruf an den Server gesendet werden, als wäre es eine Anweisung. Sie können auch einen Trigger auf eine Tabelle anwenden, um den Effekt einer einzelnen Einfügung zu erzielen. Letztendlich sind es jedoch immer noch zwei Anweisungen, und Sie möchten den Trigger wahrscheinlich nicht für jeden ausführen einfügen.