IDENT_SEED(Transact-SQL)

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Microsoft Fabric 中的 SQL 数据库

IDENT_SEED系统函数返回创建表格或视图中身份列时指定的原始种子值。 通过 改变 DBCC CHECKIDENT 单位列当前值不会改变该函数返回的值。

Transact-SQL 语法约定

语法

IDENT_SEED ( 'table_or_view' )

参数

table_or_view

一个表达式,指定用于检查身份种子值的表或视图。 table_or_view 可以是带有引号的字符串常量,也可以是变量、函数或列名。 table_or_view 的数据类型为 char、nchar、varchar 或 nvarchar

返回类型

numeric(@@MAXPRECISION,0))

例外

返回 NULL 错误或调用方没有查看对象的权限。

在 SQL Server 中,用户只能查看用户拥有或被授予权限的安全对象的元数据。 这种安全性意味着,如果用户对对象没有权限,像这样的 IDENT_SEED 内置元数据输出函数可能会返回 NULL 。 有关详细信息,请参阅 Metadata Visibility Configuration

Remarks

IDENT_SEED该函数在Fabric Data Warehouse中不可用于单位列

示例

A. 返回指定表中的种子值

以下示例返回了 AdventureWorks2025 数据库中该 Person.Address 表的种子值。

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

B. 从多个表返回种子值

以下示例返回了 AdventureWorks2025 数据库中带有种子值的身份列的表。

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