作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试做这样的事情:
declare @myCurrentSeedValue int;
select @myCurrentSeedValue = DBCC CheckIdent('MyTable', NORESEED);
这显然是不正确的语法。有人对我如何实现这一目标有任何建议吗?
我知道我可以做这样的事情:
select @myCurrentSeedValue = IDENT_SEED('MyTable');
但问题在于,根据 MSDN 关于 IDENT_SEED 函数的说法:
Changing the current value of an identity column by using DBCC CHECKIDENT does not change the value returned by this function.
这可能会出现问题,因为我们还有其他存储过程将调用 DBCC CHECKIDENT 并重新设置标识列的种子,因此我实际上需要当前的种子而不是原始的种子。
最佳答案
使用Ident_current可以获得表的当前标识,无论哪个进程更新表标识。它适用于任何 session 、任何范围。
declare @myCurrentSeedValue int;
select @myCurrentSeedValue = IDENT_CURRENT( 'MyTable' )
select @myCurrentSeedValue
关于sql - 有没有办法将 DBCC CheckIdent 的值存储到变量中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15711375/
我是一名优秀的程序员,十分优秀!