IDENT_INCR (Transact-SQL)

返回增量值(返回形式为 numeric (**@@**MAXPRECISION,0)),该值是在带有标识列的表或视图中创建标识列时指定的。

主题链接图标Transact-SQL 语法约定

语法

IDENT_INCR ( 'table_or_view' )

参数

  • 'table_or_view'
    指定表或视图以检查有效的标识增量值的表达式。table_or_view 可以是带有引号的字符串常量,也可以是变量、函数或列名。table_or_view 的数据类型为 char、nchar、varchar 或 nvarchar。

返回类型

numeric

异常

出现错误时或调用方没有查看对象的权限时,将返回 NULL。

在 SQL Server 中,用户只能查看其拥有的安全对象的元数据,或者已对其授予权限的安全对象的元数据。也就是说,如果用户对该对象没有任何权限,则某些会产生元数据的内置函数(如 IDENT_INCR)可能返回 NULL。有关详细信息,请参阅元数据可见性配置元数据可见性故障排除

示例

A. 返回指定表的增量值

以下示例返回 AdventureWorks2008R2 数据库中 Person.Address 表的增量值。

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

B. 从多个表返回增量值

以下示例返回 AdventureWorks2008R2 数据库中的表,其中包含带有增量值的标识列。

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

以下为部分结果集。

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