Heim > Datenbank > MySQL-Tutorial > Wie kann ich Identitätswerte nach einer INSERT-Anweisung mithilfe der OUTPUT-Klausel von SQL Server abrufen?

Wie kann ich Identitätswerte nach einer INSERT-Anweisung mithilfe der OUTPUT-Klausel von SQL Server abrufen?

Mary-Kate Olsen
Freigeben: 2025-01-17 12:26:10
Original
201 Leute haben es durchsucht

How Can I Retrieve Identity Values After an INSERT Statement Using SQL Server's OUTPUT Clause?

Abrufen neu generierter Identitätswerte mit der OUTPUT-Klausel von SQL Server

Beim Einfügen von Daten in eine SQL Server-Datenbank benötigen Sie häufig den neu generierten Identitätswert für die eingefügte Zeile. Die OUTPUT-Klausel bietet eine saubere und effiziente Möglichkeit, dies zu erreichen. In diesem Artikel werden zwei Hauptmethoden untersucht.

Methode 1: Ausgabe auf Konsole oder Verwendung von ExecuteScalar()

Zum schnellen Debuggen oder Abrufen des Identitätswerts in einem Nicht-T-SQL-Kontext (wie einer .NET-Anwendung) kann die OUTPUT-Klausel den Wert direkt an die SSMS-Konsole senden oder mit ExecuteScalar() erfasst werden.

<code class="language-sql">INSERT INTO MyTable(Name, Address, PhoneNo)
OUTPUT INSERTED.ID
VALUES ('Yatrix', '1234 Address Stuff', '1112223333')</code>
Nach dem Login kopieren

In .NET:

<code class="language-csharp">int newId = command.ExecuteScalar();</code>
Nach dem Login kopieren

Methode 2: Ausgabe in Tabellenvariable oder temporäre Tabelle

Für Szenarien, die den Identitätswert innerhalb einer gespeicherten T-SQL-Prozedur oder eines Stapels erfordern, bietet eine Tabellenvariable oder eine temporäre Tabelle eine leistungsstarke Lösung. Die OUTPUT-Klausel leitet den eingefügten Identitätswert in diese Tabelle und ermöglicht so die weitere Verarbeitung innerhalb der T-SQL-Umgebung.

<code class="language-sql">DECLARE @OutputTbl TABLE (ID INT)

INSERT INTO MyTable(Name, Address, PhoneNo)
OUTPUT INSERTED.ID INTO @OutputTbl(ID)
VALUES ('Yatrix', '1234 Address Stuff', '1112223333')

-- Now you can use the ID from @OutputTbl
SELECT ID FROM @OutputTbl;</code>
Nach dem Login kopieren

Diese Techniken ermöglichen es Entwicklern, generierte Identitätswerte nahtlos aus INSERT-Anweisungen abzurufen, was das Debuggen erleichtert, Werte an Anwendungen zurückgibt und komplexe T-SQL-Workflows ermöglicht.

Das obige ist der detaillierte Inhalt vonWie kann ich Identitätswerte nach einer INSERT-Anweisung mithilfe der OUTPUT-Klausel von SQL Server abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage