gpt4 book ai didi

sql - 获取下一个ID而不插入行

转载 作者:行者123 更新时间:2023-12-02 07:39:16 26 4
gpt4 key购买 nike

在 SQL (SQL Server) 中是否可以在插入行之前从表中的标识列检索下一个 ID(整数),而无需实际插入行?如果删除了最近的行,则这不一定是最高 ID 加 1。

我问这个是因为我们偶尔需要用新行更新实时数据库。行的 ID 在我们的代码中使用(例如 Switch (ID){ Case ID: } 并且必须相同。如果我们的开发数据库和实时数据库不同步,最好提前预测行 ID部署之前。

我当然可以 SET IDENTITY OFF SET INSERT_IDENTITY ON或运行事务(这会回滚ID吗?)等,但想知道是否有一个函数返回下一个ID(不增加它) )。

最佳答案

尝试 IDENT_CURRENT :

Select IDENT_CURRENT('yourtablename')

即使您没有在当前 session 中插入任何行,此操作也有效:

Returns the last identity value generated for a specified table or view. The last identity value generated can be for any session and any scope.

关于sql - 获取下一个ID而不插入行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1542886/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com