Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mendayakan dan Lumpuhkan IDENTITY_INSERT dalam SQL Server 2008 untuk Sisipan Lajur Identiti Terkawal?

Bagaimana untuk Mendayakan dan Lumpuhkan IDENTITY_INSERT dalam SQL Server 2008 untuk Sisipan Lajur Identiti Terkawal?

Barbara Streisand
Lepaskan: 2025-01-09 08:57:41
asal
846 orang telah melayarinya

How to Enable and Disable IDENTITY_INSERT in SQL Server 2008 for Controlled Identity Column Insertions?

SQL Server 2008: Mengurus Sisipan Lajur Identiti Menggunakan IDENTITY_INSERT

Dalam pangkalan data SQL Server, timbul situasi di mana anda perlu memasukkan nilai secara manual ke dalam lajur identiti. Walau bagaimanapun, IDENTITY_INSERT dilumpuhkan secara lalai, menghalang pemasukan terus.

Memahami IDENTITY_INSERT Ralat OFF

Percubaan untuk memasukkan nilai ke dalam lajur identiti dengan IDENTITY_INSERT ditetapkan kepada MATI menyebabkan ralat ini:

Tidak boleh memasukkan nilai eksplisit untuk lajur identiti dalam jadual 'TableName' apabila IDENTITY_INSERT ditetapkan kepada OFF.

Ini kerana SQL Server mengurus nilai identiti unik secara automatik. Apabila IDENTITY_INSERT DIMATIKAN, pangkalan data menjangkakan lajur identiti akan kosong, membenarkannya untuk menetapkan nilai jujukan seterusnya.

Mendayakan IDENTITY_INSERT menggunakan SQL Server Management Studio (SSMS)

Untuk mendayakan IDENTITY_INSERT untuk jadual tertentu dalam SSMS:

  1. Klik kanan pangkalan data yang mengandungi jadual sasaran.
  2. Pilih "Pertanyaan Baharu".
  3. Laksanakan arahan T-SQL berikut, gantikan <tablename> dengan nama jadual anda:
SET IDENTITY_INSERT <tablename> ON;
Salin selepas log masuk
  1. Selepas pelaksanaan, masukkan data anda. Ingat untuk melumpuhkan IDENTITY_INSERT selepas itu.

Menggunakan T-SQL Secara Terus

Anda juga boleh mengurus IDENTITY_INSERT terus dalam T-SQL:

SET IDENTITY_INSERT sometableWithIdentity ON;

INSERT INTO sometableWithIdentity (IdentityColumn, col2, col3, ...)
VALUES (AnIdentityValue, col2value, col3value, ...);

SET IDENTITY_INSERT sometableWithIdentity OFF;
Salin selepas log masuk

Mesej Ralat Terperinci

Mesej ralat akan menentukan jadual yang terjejas, membantu dalam pengenalpastian masalah. Contohnya:

<code>Cannot insert explicit value for identity column in table 'Baskets' when IDENTITY_INSERT is set to OFF.</code>
Salin selepas log masuk

Dengan mendayakan sementara IDENTITY_INSERT, anda mengawal nilai lajur identiti. Sentiasa nyahdayakannya selepas itu untuk mengekalkan integriti pangkalan data dan penjanaan identiti berurutan.

Atas ialah kandungan terperinci Bagaimana untuk Mendayakan dan Lumpuhkan IDENTITY_INSERT dalam SQL Server 2008 untuk Sisipan Lajur Identiti Terkawal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan