Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mengurus IDENTITY_INSERT dalam SQL Server 2008?
Mengawal IDENTITY_INSERT dalam SQL Server 2008
Memasukkan data ke dalam jadual dengan lajur identiti dalam SQL Server 2008 kadangkala memerlukan mengatasi penjanaan nilai identiti automatik. Mencuba memasukkan terus dengan nilai yang ditentukan apabila IDENTITY_INSERT
dimatikan akan mengakibatkan ralat.
Untuk memasukkan nilai eksplisit, anda perlu mendayakan IDENTITY_INSERT
buat sementara waktu. Ini dilakukan menggunakan arahan T-SQL berikut:
<code class="language-sql">SET IDENTITY_INSERT DatabaseName.SchemaName.TableName ON;</code>
Gantikan DatabaseName
, SchemaName
dan TableName
dengan pangkalan data, skema dan nama jadual anda masing-masing.
Kini anda boleh memasukkan data dengan nilai yang ditentukan untuk lajur identiti:
<code class="language-sql">INSERT INTO YourTable (IdentityColumn, Column2, Column3, ...) VALUES (YourIdentityValue, Value2, Value3, ...);</code>
Yang penting, sentiasa ingat untuk melumpuhkan IDENTITY_INSERT
selepas sisipan anda selesai:
<code class="language-sql">SET IDENTITY_INSERT YourTable OFF;</code>
Gagal mematikan IDENTITY_INSERT
boleh menyebabkan ketidakkonsistenan dan ralat.
Sebagai alternatif, anda boleh mengurus tetapan ini melalui SQL Server Management Studio (SSMS). Cari jadual anda dalam Object Explorer, klik kanan, pilih "Properties," navigasi ke tab "Identity Specification" dan tandakan "Allow IDENTITY_INSERT." Walau bagaimanapun, ingat ini adalah GUI yang setara dengan arahan T-SQL; mekanisme asas tetap sama. Kawalan T-SQL langsung menawarkan lebih fleksibiliti program.
Atas ialah kandungan terperinci Bagaimana untuk Mengurus IDENTITY_INSERT dalam SQL Server 2008?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!