IDENT_SEED (Transact-SQL)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

テーブルやビューでの ID 列の作成時に指定された元のシード値を返します。 DBCC CHECKIDENT を使用して ID 列の現在の値を変更しても、この関数で返される値は変更されません。

Transact-SQL 構文表記規則

構文

IDENT_SEED ( 'table_or_view' )  

Note

SQL Server 2014 (12.x) 以前のバージョンの Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。

引数

'table_or_view'
ID シード値を確認するためのテーブルまたはビューを表すを指定します。 されることはありません 引用符、変数、関数の場合、または列名で囲まれた文字列定数を指定できます。 table_or_viewcharncharvarchar、または nvarcharです。

戻り値の型

numeric(@@MAXPRECISION,0))

例外

エラーが発生した場合、または呼び出し元にオブジェクトの表示権限がない場合は、NULL が返されます。

SQL Server では、ユーザーは自身が所有している、または権限を与えられている、セキュリティ保護可能なアイテムのメタデータのみを表示できます。 このセキュリティは、オブジェクトに対する権限がユーザーに与えられていない場合、メタデータを生成する組み込み関数 (IDENT_SEED など) が NULL を返す可能性があることを意味します。 詳細については、「 Metadata Visibility Configuration」を参照してください。

A. 指定したテーブルのシード値を返す

次の例では、AdventureWorks2022 データベースの Person.Address テーブルのシード値を返します。

USE AdventureWorks2022;  
GO  
SELECT IDENT_SEED('Person.Address') AS Identity_Seed;  
GO  

B. 複数のテーブルのシード値を返す

次の例では、ID 列にシード値が含まれる、AdventureWorks2022 データベースのテーブルを返します。

USE AdventureWorks2022;  
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  

次に結果セットの一部を示します。

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

参照

式 (Transact-SQL)
システム関数 (Transact-SQL)
IDENT_CURRENT (Transact-SQL)
IDENT_INCR (Transact-SQL)
DBCC CHECKIDENT (Transact-SQL)
sys.identity_columns (Transact-SQL)