Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy do:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Magazyn w Microsoft Fabric
Baza danych SQL w Microsoft Fabric
IDENTITY jest używany tylko w SELECT instrukcji z klauzulą tabeli INTO do wstawienia kolumny tożsamości do nowej tabeli. Chociaż funkcja jest IDENTITY podobna, nie IDENTITY jest własnością używaną z CREATE TABLE i ALTER TABLE.
Uwaga / Notatka
Aby utworzyć automatycznie zwiększającą się liczbę, która może być używana w wielu tabelach lub może być wywoływana z poziomu aplikacji bez odwoływania się do jakiejkolwiek tabeli, zobacz Numery Sekwencyjne.
Transact-SQL konwencje składni
Składnia
IDENTITY (data_type [ , seed , increment ] ) AS column_name
Argumenty (w programowaniu)
data_type
Typ danych kolumny tożsamości. Prawidłowe typy danych dla kolumny tożsamości to dowolne typy danych kategorii typu danych całkowitych, z wyjątkiem typu danych bitowych lub typu danych dziesiętnych .
nasienie
Wartość całkowita przypisana do pierwszego wiersza tabeli. Każdy kolejny wiersz ma przypisaną następną wartość tożsamości, która jest równa ostatniej wartości IDENTITY oraz wartości przyrostowej . Jeśli nie określono ani inkrementacji, ani inkrementacji , obie wartości domyślne to 1.
wzrost
Wartość całkowita do wartości seed dla kolejnych wierszy w tabeli.
column_name
Nazwa kolumny, którą należy wstawić do nowej tabeli.
Typy zwracane
Zwraca to samo co data_type.
Uwagi
Ponieważ ta funkcja tworzy kolumnę w tabeli, nazwa kolumny musi być określona na liście wyboru w jeden z następujących sposobów:
--(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;
W Fabric Data Warehouse nie można określić seed ani increment, ponieważ te wartości są automatycznie zarządzane, aby zapewnić unikalne liczby całkowite.
BIGINT IDENTITY jest wszystkim, co jest wymagane do definicji kolumny w zdaniu CREATE TABLE . Więcej informacji można znaleźć w CREATE TABLE (Transact-SQL), IDENTITY (Property) oraz IDENTITY in Fabric Data Warehouse.
Przykłady
Poniższy przykład wstawia wszystkie wiersze z tabeli Contact z bazy AdventureWorks2025 do nowej tabeli o nazwie NewContact. Funkcja ta IDENTITY służy do rozpoczynania numerów identyfikacyjnych od 100 zamiast 1 w tabeli NewContact .
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