我正在一个项目中,我们正在从Oracle迁移到SQL Server。
我想知道,是否像标题所说的那样,是否有任何SQL服务器等效于Oracle的内置函数IDENTITY_VAL_LOCAL()
。
我正在查看的 SQL 语句如下所示:
SELECT IDENTITY_VAL_LOCAL() FROM TABLE(VALUES 1) AS t
任何帮助将不胜感激。
此致敬意
萨拉
您可以在 SQL Server 中使用 Scope_Identity((。您也可以使用输出子句。
您可以在此处查看现场演示。在这里,Scope_Identity(( 将在表包含标识列时起作用。使用此功能,您将获得插入到标识列中的最后一个值。
使用 Output 子句,您可以获取任何列最近添加的值以及已删除的值,也可以检索/存储在变量/表中。
如果需要通过表名获取最后一个 ID,可以使用IDENT_CURRENT
函数:
SELECT IDENT_CURRENT ('Person.Address') AS Current_Identity;