IDENTITY (Function) (Transact-SQL)
Berlaku untuk: SQL Server Azure SQL Managed Instance
Hanya digunakan dalam pernyataan SELECT dengan klausa tabel INTO untuk menyisipkan kolom identitas ke dalam tabel baru. Meskipun serupa, fungsi IDENTITY bukan properti IDENTITY yang digunakan dengan CREATE TABLE dan ALTER TABLE.
Catatan
Untuk membuat nomor bertahap otomatis yang dapat digunakan dalam beberapa tabel atau yang dapat dipanggil dari aplikasi tanpa merujuk tabel apa pun, lihat Nomor Urutan.
Sintaks
IDENTITY (data_type [ , seed , increment ] ) AS column_name
Argumen
data_type
Adalah jenis data kolom identitas. Jenis data yang valid untuk kolom identitas adalah jenis data apa pun dari kategori jenis data bilangan bulat, kecuali untuk jenis data bit , atau jenis data desimal .
biji
Adalah nilai bilangan bulat yang akan ditetapkan ke baris pertama dalam tabel. Setiap baris berikutnya diberi nilai identitas berikutnya, yang sama dengan nilai IDENTITY terakhir ditambah nilai kenaikan . Jika benih atau kenaikan tidak ditentukan, keduanya default ke 1.
Kenaikan
Adalah nilai bilangan bulat untuk ditambahkan ke nilai seed untuk baris berturut-turut dalam tabel.
column_name
Adalah nama kolom yang akan disisipkan ke dalam tabel baru.
Jenis Kembalian
Mengembalikan yang sama seperti data_type.
Keterangan
Karena fungsi ini membuat kolom dalam tabel, nama untuk kolom harus ditentukan dalam daftar pemilihan dengan salah satu cara berikut:
--(1)
SELECT IDENTITY(int, 1,1) AS ID_Num
INTO NewTable
FROM OldTable;
--(2)
SELECT ID_Num = IDENTITY(int, 1, 1)
INTO NewTable
FROM OldTable;
Contoh
Contoh berikut menyisipkan semua baris dari Contact
tabel dari AdventureWorks2022database ke dalam tabel baru yang disebut NewContact
. Fungsi IDENTITY digunakan untuk memulai nomor identifikasi pada 100, bukan 1 dalam NewContact
tabel.
USE AdventureWorks2022;
GO
IF OBJECT_ID (N'Person.NewContact', N'U') IS NOT NULL
DROP TABLE Person.NewContact;
GO
ALTER DATABASE AdventureWorks2022 SET RECOVERY BULK_LOGGED;
GO
SELECT IDENTITY(smallint, 100, 1) AS ContactNum,
FirstName AS First,
LastName AS Last
INTO Person.NewContact
FROM Person.Person;
GO
ALTER DATABASE AdventureWorks2022 SET RECOVERY FULL;
GO
SELECT ContactNum, First, Last FROM Person.NewContact;
GO
Lihat Juga
BUAT TABEL (Transact-SQL)
@@IDENTITY (T-SQL)
IDENTITY (Properti) (Transact-SQL)
SELECT @local_variable (Transact-SQL)
DBCC CHECKIDENT (Transact-SQL)
sys.identity_columns (T-SQL)