Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mendapatkan Nilai Identiti Selepas Pernyataan INSERT Menggunakan Klausa OUTPUT?
Operasi pangkalan data selalunya memerlukan mendapatkan semula ID baris yang baru dimasukkan dalam pertanyaan yang sama. Artikel ini menunjukkan cara menggunakan klausa OUTPUT
yang berkuasa untuk mencapai ini dalam SQL.
Klausa OUTPUT
disepadukan dengan lancar ke dalam pernyataan INSERT
:
<code class="language-sql">INSERT INTO MyTable (Name, Address, PhoneNo) OUTPUT INSERTED.Id AS @var --Retrieves the ID VALUES ('Yatrix', '1234 Address Stuff', '1112223333');</code>
Kaedah paling mudah memaparkan ID yang baru dijana terus dalam hasil pertanyaan:
<code class="language-sql">INSERT INTO MyTable (Name, Address, PhoneNo) OUTPUT INSERTED.ID VALUES ('Yatrix', '1234 Address Stuff', '1112223333');</code>
Untuk senario yang lebih kompleks yang memerlukan pemprosesan lanjut dalam T-SQL, gunakan pembolehubah jadual:
<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');</code>
Pendekatan ini menyimpan ID yang dijana dalam @OutputTbl
, membolehkan operasi seterusnya dalam kod T-SQL anda. Klausa OUTPUT
memberikan kelonggaran untuk memasukkan data lajur lain yang berkaitan seperti yang diperlukan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan Nilai Identiti Selepas Pernyataan INSERT Menggunakan Klausa OUTPUT?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!