Rumah > Artikel > pangkalan data > Apakah yang dimaksudkan dengan atribut identiti dalam SQL?
Apakah Identiti dalam SQL, memerlukan contoh kod khusus
Dalam SQL, Identity ialah jenis data khas yang digunakan untuk menjana nombor yang meningkat sendiri Ia sering digunakan untuk mengenal pasti secara unik setiap baris data dalam jadual. Lajur Identiti sering digunakan bersama dengan lajur kunci utama untuk memastikan setiap rekod mempunyai pengecam unik. Artikel ini akan memperincikan cara menggunakan Identiti dan beberapa contoh kod praktikal.
Apabila membuat jadual, anda boleh menggunakan atribut Identiti untuk menentukan lajur sebagai lajur peningkatan automatik. Lazimnya, lajur Identiti digunakan dengan jenis integer (seperti INT, BIGINT, dll.). Berikut ialah contoh penggunaan Identity semasa membuat jadual:
CREATE TABLE [dbo].[Customers] ( [CustomerID] INT IDENTITY(1,1) PRIMARY KEY, [CustomerName] NVARCHAR(50) NOT NULL, [ContactName] NVARCHAR(50) NOT NULL, [Address] NVARCHAR(100) NULL );
Dalam kod di atas, lajur ID Pelanggan ditetapkan sebagai lajur Identiti, dan setiap kali data dimasukkan, ia akan menjana nombor penambahan automatik unik sebagai pengenalan secara automatik .
Lajur Identiti mempunyai dua atribut penting: Benih (benih) dan Kenaikan (kenaikan).
Seed menentukan nilai permulaan lajur Identiti, yang lalai kepada 1. Dalam contoh di atas, nilai Seed ialah 1, yang bermaksud ID Pelanggan bagi baris pertama data ialah 1, ID Pelanggan bagi baris kedua data ialah 2, dan seterusnya.
Kenaikan menentukan langkah pertumbuhan nilai Identiti, dan lalai ialah 1. Dalam contoh di atas, nilai Penambahan ialah 1, yang bermaksud setiap kali data baharu dimasukkan, nilai Identiti akan meningkat secara automatik sebanyak 1. Walau bagaimanapun, anda juga boleh menukar saiz langkah pertumbuhan dengan mengubah suai nilai Peningkatan.
Memasukkan data menggunakan lajur Identiti adalah sangat mudah, cuma jangan masukkan nilai lajur Identiti. Apabila memasukkan data, pangkalan data secara automatik menjana nilai unik untuk lajur Identiti. Contoh di bawah menunjukkan cara untuk memasukkan data ke dalam lajur Identiti:
INSERT INTO Customers (CustomerName, ContactName, Address) VALUES ('ABC Company', 'John Smith', '123 Main Street'); INSERT INTO Customers (CustomerName, ContactName, Address) VALUES ('XYZ Inc', 'Jane Doe', '456 Maple Avenue');
Dalam kod di atas, kami hanya memasukkan nilai lajur CustomerName, ContactName dan Address tanpa menyatakan nilai CustomerID. Pangkalan data secara automatik menjana nilai unik untuk CustomerID.
Kadangkala, kita perlu mendapatkan nilai Identiti data yang baru kita masukkan. Dalam SQL Server, kita boleh menggunakan fungsi SCOPE_IDENTITY() untuk mendapatkan nilai Identiti data yang paling baru dimasukkan. Kod berikut menunjukkan cara menggunakan fungsi SCOPE_IDENTITY():
INSERT INTO Customers (CustomerName, ContactName, Address) VALUES ('ABC Company', 'John Smith', '123 Main Street'); SELECT SCOPE_IDENTITY() AS LastID;
Dalam kod di atas, kami memasukkan sekeping data baharu dan menggunakan pernyataan SELECT untuk mendapatkan nilai Identiti data yang dimasukkan baru-baru ini dan menyimpannya dalam medan LastID .
Kadangkala, kita mungkin mahu menyesuaikan nilai permulaan lajur Identiti. SQL Server membenarkan kami mengubah suai nilai semasa lajur Identiti melalui pernyataan DBCC CHECKIDENT. Kod di bawah menunjukkan cara menggunakan penyata DBCC CHECKIDENT:
DBCC CHECKIDENT ('Customers', RESEED, 100);
Dalam kod di atas, kami menetapkan semula nilai semasa lajur Identiti jadual Pelanggan kepada 100. Apabila data dimasukkan seterusnya, nilai Identiti akan meningkat daripada 101.
Ringkasan:
Identiti ialah pengecam peningkatan diri yang biasa digunakan dalam SQL, digunakan untuk mengenal pasti keunikan setiap baris data dalam jadual. Apabila membuat jadual, anda boleh menggunakan sifat Identiti untuk menentukan lajur sebagai lajur Identiti. Apabila memasukkan data, jika nilai lajur Identiti tidak ditentukan, pangkalan data akan menjana nombor unik yang meningkat sendiri sebagai pengecam secara automatik. Melalui fungsi SCOPE_IDENTITY(), anda boleh mendapatkan nilai Identiti data yang paling baru dimasukkan. Pada masa yang sama, anda boleh menggunakan pernyataan DBCC CHECKIDENT untuk menyesuaikan nilai semasa lajur Identiti. Saya harap artikel ini akan membantu anda untuk mengkaji dan menggunakan Identiti dalam SQL.
Atas ialah kandungan terperinci Apakah yang dimaksudkan dengan atribut identiti dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!