Mengambil ID Baris Baru Ditambah dalam Pelayan SQL: Meneroka @@IDENTITY, SKOP_IDENTITY, IDENT_CURRENT dan Klausa OUTPUT
Apabila menambahkan baris pada jadual yang mengandungi lajur identiti, mendapatkan ID yang baru dijana selalunya penting. SQL Server menawarkan beberapa kaedah untuk mencapai ini, masing-masing mempunyai kelebihan dan batasannya sendiri.
@@IDENTITI
Fungsi ini mengembalikan nilai identiti yang dijana terbaharu merentas semua jadual dalam sesi semasa. Oleh itu, nilai yang dikembalikan mungkin tidak selalu mencerminkan ID baris yang baru anda masukkan. Ia terbukti berguna apabila mendapatkan semula ID daripada pencetus atau pernyataan lain yang dilaksanakan dalam sesi yang sama.
SKOP_IDENTITI()
SCOPE_IDENTITY() menyediakan nilai identiti terakhir yang dijana dalam sesi dan skop semasa. Ini biasanya kaedah pilihan untuk mendapatkan semula ID baris yang baru anda tambahkan.
IDENT_CURRENT('tableName')
Fungsi ini mendapatkan semula nilai identiti terakhir yang dijana untuk jadual tertentu, tanpa mengira sesi atau skop. Ini berguna apabila anda memerlukan ID untuk jadual yang anda belum memasukkan rekod secara langsung.
Klausa OUTPUT
Klausa OUTPUT pernyataan INSERT membenarkan akses kepada setiap baris yang disisipkan oleh pernyataan itu, termasuk nilai identiti. Output boleh diarahkan ke jadual atau pembolehubah sementara untuk mendapatkan semula ID kemudian.
Memilih Pendekatan Terbaik
Kaedah optimum bergantung pada keperluan khusus anda:
@@IDENTITY
apabila mendapatkan ID daripada pencetus atau pernyataan lain dalam sesi yang sama.SCOPE_IDENTITY()
ialah pendekatan yang disyorkan.IDENT_CURRENT('tableName')
untuk mendapatkan ID bagi jadual tanpa sisipan rekod terkini.OUTPUT
.Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Identiti Baris yang Baru Dimasukkan dalam Pelayan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!