IDENT_SEED (Transact-SQL)
Restituisce il valore di inizializzazione originale, come dato di tipo numeric (**@@**MAXPRECISION,0), specificato durante la creazione di una colonna Identity in una tabella o una vista. La modifica del valore corrente di una colonna Identity utilizzando DBCC CHECKIDENT non comporta anche la modifica del valore restituito da questa funzione.
Convenzioni della sintassi Transact-SQL
Sintassi
IDENT_SEED ( 'table_or_view' )
Argomenti
- ' table_or_view '
Espressione che specifica la tabella o la vista in cui si desidera verificare la presenza di un valore di inizializzazione Identity. table_or_view può essere una costante stringa di caratteri racchiusa tra virgolette, una variabile, una funzione o un nome di colonna. table_or_view è di tipo char, nchar, varchar o nvarchar.
Tipi restituiti
numeric
Eccezioni
Restituisce NULL in caso di errore o se un chiamante non dispone dell'autorizzazione necessaria per visualizzare l'oggetto.
In SQL Server un utente può visualizzare esclusivamente i metadati delle entità a sicurezza diretta di cui è proprietario o per cui ha ricevuto un'autorizzazione. Di conseguenza, le funzioni predefinite di creazione dei metadati come IDENT_SEED possono restituire NULL se l'utente non dispone di alcuna autorizzazione per l'oggetto. Per ulteriori informazioni, vedere Configurazione della visibilità dei metadati.
Esempi
A.Restituzione del valore di inizializzazione da una tabella specificata
Nell'esempio seguente viene restituito il valore di inizializzazione per la tabella Person.Address del database AdventureWorks.
USE AdventureWorks2012;
GO
SELECT IDENT_SEED('Person.Address') AS Identity_Seed;
GO
USE AdventureWorks2012;
GO
SELECT IDENT_SEED('Person.Address') AS Identity_Seed;
GO
B.Restituzione del valore di inizializzazione da più tabelle
Nell'esempio seguente vengono restituite le tabelle del database AdventureWorks che includono una colonna Identity con un valore di inizializzazione.
USE AdventureWorks2012;
GO
SELECT TABLE_SCHEMA, TABLE_NAME,
IDENT_SEED(TABLE_SCHEMA + '.' + TABLE_NAME) AS IDENT_SEED
FROM INFORMATION_SCHEMA.TABLES
WHERE IDENT_SEED(TABLE_SCHEMA + '.' + TABLE_NAME) IS NOT NULL;
GO
USE AdventureWorks2012;
GO
SELECT TABLE_SCHEMA, TABLE_NAME,
IDENT_SEED(TABLE_SCHEMA + '.' + TABLE_NAME) AS IDENT_SEED
FROM INFORMATION_SCHEMA.TABLES
WHERE IDENT_SEED(TABLE_SCHEMA + '.' + TABLE_NAME) IS NOT NULL;
GO
Set di risultati parziale:
TABLE_SCHEMA TABLE_NAME IDENT_SEED
------------ --------------------------- -----------
Person Address 1
Production ProductReview 1
Production TransactionHistory 100000
Person AddressType 1
Production ProductSubcategory 1
Person vAdditionalContactInfo 1
dbo AWBuildVersion 1
Vedere anche
Riferimento
Funzioni di sistema (Transact-SQL)