IDENT_INCR (Transact-SQL)

Gibt den inkrementellen Wert (als numeric (**@@**MAXPRECISION,0)) zurück, der beim Erstellen einer Identitätsspalte in einer Tabelle oder Sicht mit Identitätsspalte angegeben wurde.

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

IDENT_INCR ( 'table_or_view' )

Argumente

  • ' table_or_view '
    Ein Ausdruck, der die Tabelle oder Sicht angibt, die auf einen gültigen inkrementellen Wert für die Identitätsspalte überprüft werden soll. table_or_view kann eine Zeichenfolgenkonstante in Anführungszeichen, eine Variable, eine Funktion oder ein Spaltenname sein. table_or_view ist vom Datentyp char, nchar, varchar oder nvarchar.

Rückgabetypen

numeric

Ausnahmen

Gibt NULL bei einem Fehler zurück oder wenn ein Aufrufer nicht über Berechtigungen zum Anzeigen des Objekts verfügt.

In SQL Server kann ein Benutzer nur die Metadaten sicherungsfähiger Elemente anzeigen, bei denen der Benutzer entweder der Besitzer ist oder für die dem Benutzer eine Berechtigung erteilt wurde. Dies bedeutet, dass Metadaten ausgebende integrierte Funktionen, z. B. IDENT_INCR, möglicherweise NULL zurückgeben, wenn dem Benutzer für das Objekt keine Berechtigung erteilt wurde. Weitere Informationen finden Sie unter Konfigurieren der Sichtbarkeit von Metadaten.

Beispiele

A.Zurückgeben des inkrementellen Werts für eine angegebene Tabelle

Im folgenden Beispiel wird der inkrementelle Wert für die Person.Address-Tabelle in der AdventureWorks-Datenbank zurückgegeben.

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.Zurückgeben des inkrementellen Werts aus mehreren Tabellen

Im folgenden Beispiel werden die Tabellen in der AdventureWorks-Datenbank zurückgegeben, die eine Identitätsspalte mit einem inkrementellen Wert enthalten.

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;

Dies ist ein Auszug aus dem Resultset.

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

Siehe auch

Verweis

Ausdrücke (Transact-SQL)

Systemfunktionen (Transact-SQL)

IDENT_CURRENT (Transact-SQL)

IDENT_SEED (Transact-SQL)

DBCC CHECKIDENT (Transact-SQL)

sys.identity_columns (Transact-SQL)