TOŻSAMOŚĆ (funkcja) (Transact-SQL)
Używane tylko w instrukcja SELECT z INTO table klauzula , aby wstawić kolumna do nowej tabela.Chociaż podobne, tożsamość funkcja nie jest właściwość tożsamości, która jest używana z instrukcji ALTER TABLE i CREATE TABLE.
Składnia
IDENTITY (data_type [ , seed , increment ] ) AS column_name
Argumenty
data_type
Jest to typ danych kolumnatożsamości.Prawidłowymi typami danych dla kolumna są wszystkie typy danych kategorię typu danych Liczba całkowita, z wyjątkiem bit Typ danych lub decimal typu danych.seed
Jest wartością całkowitą ma być przypisany do pierwszego wiersza w tabela.Każdy kolejny wiersz jest przypisywana wartość tożsamości dalej jest równa ostatniej wartości tożsamości oraz increment wartości.Jeśli żadna seed ani increment jest określony, domyślnie obie 1.increment
Jest wartością całkowitą, aby dodać do seed wartość dla kolejnych wierszy w tabela.column_name
Jest to nazwa kolumna , która ma być wstawiony do nowej tabela.
Zwracane typy
Zwraca taki sam, jak data_type*.*
Uwagi
Ponieważ ta funkcja tworzy kolumna w tabela, nazwa kolumna musi być określona na liście wybierz 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 ilustruje wstawienie wszystkie wiersze z Person tabela z AdventureWorks2008R2 bazy danych do nowej tabela o nazwie NewContact.TOŻSAMOŚĆ funkcja jest używany do uruchamiania numery identyfikacyjne 100 zamiast 1 w NewContact tabela.
USE AdventureWorks2008R2;
GO
IF OBJECT_ID (N'Person.NewContact', N'U') IS NOT NULL
DROP TABLE Person.NewContact;
GO
ALTER DATABASE AdventureWorks2008R2 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 AdventureWorks2008R2 SET RECOVERY FULL;
GO
SELECT ContactNum, First, Last FROM Person.NewContact;
GO