关于sqlserver2008列的自动增长
有几种方式可以设置列的自动增长?除了IDENTITY(1,1)之外,还有别的吗?
最重要的是:insert一条数据以后,怎么返回这个字段的值?
我看到了好几种,不知道哪一个最安全、准确:
IDENT_CURRENT 函数返回为任何会话和任何作用域中的特定表最后生成的标识值。
@@IDENTITY 返回为当前会话的所有作用域中的任何表最后生成的标识值。
SCOPE_IDENTITY 返回为当前会话和当前作用域中的任何表最后生成的标识值。
谢谢大家!
[解决办法]
1.一般来说,使用identity(int,1,1)或手工设置自增列.
2.如果是多用户操作,哪个都不安全.所以我从来不用所谓的自增列.
[解决办法]
1. IDENTITY(1,1)可以设置自动增长. NEWSEQUENTIALID ()创建大于先前通过该函数生成的任何 GUID 的 GUID
2. 你插入一条数据以后,马上用 SCOPE_IDENTITY来获取插入的值.
[解决办法]
SCOPE_IDENTITY 返回为当前会话和当前作用域中的任何表最后生成的标识值。
这个得到刚刚插入的自增值
其他的也应该会有其他用处
[解决办法]
没有吧。。。
[解决办法]