Di SQL Server, Anda dapat menggunakan T-SQL IDENT_SEED()
berfungsi untuk mengembalikan benih asli dari kolom identitas. Ini adalah nilai benih asli yang ditentukan saat membuat kolom identitas.
Sintaks
Sintaksnya seperti ini:
IDENT_SEED ( 'table_or_view' )
tabel_atau_tampilan argumen adalah ekspresi yang menentukan tabel atau tampilan untuk memeriksa nilai benih identitas.
Contoh 1 – Penggunaan Dasar
Berikut ini contoh kode dasar.
SELECT IDENT_SEED('Pets') AS Result;
Hasil:
+----------+ | Result | |----------| | 1 | +----------+
Dalam hal ini, nilai benih identitas adalah 1.
Berikut kueri lain yang memeriksa lebih banyak tabel.
SELECT IDENT_SEED('Pets') AS Pets, IDENT_SEED('BestFriends') AS BestFriends, IDENT_SEED('Cities') AS Cities;
Hasil:
+--------+---------------+----------+ | Pets | BestFriends | Cities | |--------+---------------+----------| | 1 | 101 | 150 | +--------+---------------+----------+
Masing-masing tabel ini dibuat dengan nilai identitas benih yang berbeda.
Contoh 2 – Menyertakan Skema
Anda juga dapat menyertakan skema dalam argumen.
SELECT IDENT_SEED('dbo.Pets') AS Result;
Hasil:
+----------+ | Result | |----------| | 1 | +----------+
Contoh 3 – Centang Semua Tabel di Database
Berikut ini contoh pemeriksaan semua tabel dalam database untuk nilai benih identitasnya.
SELECT TABLE_SCHEMA, TABLE_NAME, IDENT_SEED(TABLE_SCHEMA + '.' + TABLE_NAME) AS IDENT_SEED FROM INFORMATION_SCHEMA.TABLES WHERE IDENT_SEED(TABLE_SCHEMA + '.' + TABLE_NAME) IS NOT NULL;
Hasil:
+----------------+----------------+--------------+ | TABLE_SCHEMA | TABLE_NAME | IDENT_SEED | |----------------+----------------+--------------| | dbo | ConstraintTest | 1 | | dbo | Event | 1 | | dbo | Scoreboard | 1 | | dbo | Pets | 1 | | dbo | BestFriends | 101 | | dbo | Cities | 150 | | dbo | Colors | 1 | +----------------+----------------+--------------+
Tentang Nilai Pengembalian
Nilai kembalian untuk IDENT_SEED()
adalah numeric(@@MAXPRECISION,0))
. Ini berarti bahwa ini adalah tipe data numerik dengan presisi dan skala tetap.
Ketepatan tergantung pada server. @@MAXPRECISION
argumen mengembalikan tingkat yang digunakan oleh tipe data desimal dan numerik seperti yang saat ini diatur di server. Presisi menentukan jumlah total digit desimal maksimum (termasuk yang ada di sisi kiri dan kanan titik desimal).
Argumen kedua menentukan skala 0
, yang berarti tidak ada angka desimal di sebelah kanan tempat desimal.
Anda dapat menjalankan kueri berikut untuk menemukan tingkat presisi yang saat ini disetel di server Anda:
SELECT @@MAX_PRECISION AS [Max Precision];
Inilah hasilnya di sistem saya:
+-----------------+ | Max Precision | |-----------------| | 38 | +-----------------+
Membuat Kolom Identitas
Anda dapat membuat kolom identitas dengan menggunakan IDENTITY()
properti di CREATE TABLE
atau ALTER TABLE
penyataan.
Cara lain untuk membuat kolom identitas adalah IDENTITY()
fungsi. Ini memungkinkan Anda membuat kolom identitas saat menggunakan SELECT INTO
pernyataan untuk mentransfer data dari satu sumber ke sumber lainnya.