Condividi tramite


IDENT_INCR (Transact-SQL)

Restituisce il valore di incremento, come dato di tipo numeric (**@@**MAXPRECISION,0), specificato durante la creazione di una colonna Identity in una tabella o una vista che include una colonna Identity.

Icona di collegamento a un argomento Convenzioni della sintassi Transact-SQL

Sintassi

IDENT_INCR ( '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 incremento Identity valido. 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_INCR 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 incremento per una tabella specificata

Nell'esempio seguente viene restituito il valore di incremento per la tabella Person.Address del database AdventureWorks.

USE AdventureWorks2012;
GO
SELECT IDENT_INCR('Person.Address') AS Identity_Increment;
GO
USE AdventureWorks2012;
GO
SELECT IDENT_INCR('Person.Address') AS Identity_Increment;
GO

B.Restituzione del valore di incremento da più tabelle

Nell'esempio seguente vengono restituite le tabelle del database AdventureWorks che includono una colonna Identity con un valore di incremento.

USE AdventureWorks2012;
GO
SELECT TABLE_SCHEMA, TABLE_NAME, 
   IDENT_INCR(TABLE_SCHEMA + '.' + TABLE_NAME) AS IDENT_INCR
FROM INFORMATION_SCHEMA.TABLES
WHERE IDENT_INCR(TABLE_SCHEMA + '.' + TABLE_NAME) IS NOT NULL;
USE AdventureWorks2012;
GO
SELECT TABLE_SCHEMA, TABLE_NAME, 
   IDENT_INCR(TABLE_SCHEMA + '.' + TABLE_NAME) AS IDENT_INCR
FROM INFORMATION_SCHEMA.TABLES
WHERE IDENT_INCR(TABLE_SCHEMA + '.' + TABLE_NAME) IS NOT NULL;

Set di risultati parziale:

TABLE_SCHEMA        TABLE_NAME                IDENT_INCR

------------        ------------------------  ----------

Person              Address                            1

Production          ProductReview                      1

Production          TransactionHistory                 1

Person              AddressType                        1

Production          ProductSubcategory                 1

Person              vAdditionalContactInfo             1

dbo                 AWBuildVersion                     1

Production          BillOfMaterials                    1

Vedere anche

Riferimento

Espressioni (Transact-SQL)

Funzioni di sistema (Transact-SQL)

IDENT_CURRENT (Transact-SQL)

IDENT_SEED (Transact-SQL)

DBCC CHECKIDENT (Transact-SQL)

sys.identity_columns (Transact-SQL)