Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Managed Instance
Jest używany tylko w instrukcji SELECT z klauzulą tabeli INTO, aby wstawić kolumnę tożsamości do nowej tabeli. Mimo że funkcja IDENTITY nie jest właściwością IDENTITY używaną z funkcją 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
To 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
Czy wartość całkowita ma zostać przypisana do pierwszego wiersza w 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
Jest wartością całkowitą, która ma zostać dodana do wartości inicjowania kolejnych wierszy w tabeli.
column_name
To nazwa kolumny, która ma zostać wstawiona 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;
Przykłady
Poniższy przykład wstawia wszystkie wiersze z Contact
tabeli z bazy danych AdventureWorks2022 do nowej tabeli o nazwie NewContact
. Funkcja IDENTITY służy do uruchamiania numerów identyfikacyjnych na 100 zamiast 1 w NewContact
tabeli.
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
Zobacz też
CREATE TABLE (Transact-SQL)
@@IDENTITY (Transact-SQL)
IDENTITY (właściwość) (Transact-SQL)
SELECT @local_variable (Transact-SQL)
DBCC CHECKIDENT (Transact-SQL)
sys.identity_columns (Transact-SQL)