Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Gudang data di Microsoft Fabric
Database SQL di Microsoft Fabric
Gunakan IDENTITY hanya dalam SELECT pernyataan dengan INTO table klausa untuk menambahkan kolom identitas ke tabel baru. Meskipun mirip, fungsinya IDENTITY tidak sama dengan IDENTITY properti yang Anda gunakan dengan CREATE TABLE dan ALTER TABLE.
Catatan
Untuk membuat angka yang bertambah secara otomatis yang dapat Anda gunakan di beberapa tabel atau memanggil dari aplikasi tanpa merujuk tabel manapun, lihat Nomor Urutan.
Sintaks
Sintaks untuk SQL Server, Azure SQL Database, Azure SQL Managed Instance, database SQL di Fabric:
IDENTITY ( data_type [ , seed , increment ] ) AS column_name
Sintaks untuk Gudang Data Fabric:
IDENTITY ( data_type ) AS column_name
Argumen
data_type
Jenis data kolom identitas. Tipe data yang valid untuk kolom identitas adalah tipe data apa pun dalam kategori tipe data bilangan bulat , kecuali tipe data bit atau tipe data desimal .
biji
Nilai bilangan bulat yang akan ditetapkan ke baris pertama dalam tabel. Setiap baris berikutnya mendapatkan nilai identitas berikutnya, yaitu nilai terakhir IDENTITY ditambah nilai penambahan . Jika Anda tidak menentukan seed atau increment, keduanya default ke 1.
Kenaikan
Nilai bilangan bulat yang akan ditambahkan ke nilai benih untuk baris berturut-turut dalam tabel.
column_name
Nama kolom yang akan disisipkan ke dalam tabel baru.
Tipe pengembalian
Mengembalikan yang sama seperti data_type.
Keterangan
Karena fungsi ini membuat kolom dalam tabel, Anda harus menentukan nama untuk kolom dalam daftar select 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;
Dukungan di Microsoft Fabric Data Warehouse
Dalam Fabric Data Warehouse, Anda tidak dapat menentukan seed nilai karena increment sistem secara otomatis mengelola nilai-nilai ini untuk menyediakan bilangan bulat unik. Untuk definisi kolom dalam sebuah CREATE TABLE pernyataan, Anda hanya perlu menggunakan BIGINT IDENTITY. Untuk informasi selengkapnya, lihat CREATE TABLE (Transact-SQL) IDENTITY (Properti) dan IDENTITY di Fabric Data Warehouse.
Contoh
Contoh berikut menyisipkan semua baris dari Contact tabel di database AdventureWorks2025 ke dalam tabel baru bernama NewContact. Fungsi ini IDENTITY mengatur nomor identifikasi untuk dimulai dari 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