【发布时间】:2011-09-20 17:55:13
【问题描述】:
我遇到了 NEWID()。我认为将 INT 键 id-s 值插入到表中应该很有用,但它返回浮点数或对 ID 列值不太好的东西。所以我的问题是如何获取表插入的自动生成的 INT ID 值?
【问题讨论】:
-
在插入行之前是否需要知道表的下一个 ID 值?使用@@IDENTITY插入一行后获取ID会不会不起作用(默认情况下SQL应该自动增加ID)?
-
newid()生成一个 GUID。 msdn.microsoft.com/en-us/library/ms190348.aspx -
嗯,当然,我希望所有的 ID 值都不同,但在这里我不确定表应该有多大,所以我需要在整个插入生命周期中生成不同的数字。 . 怎么做?
-
@therealmitchconnors,您想使用 OUTPUT 子句返回标识值或 scope_identity() 而不是 @@identity,这将在某些条件下返回不正确的值。
标签: database sql-server-2005 tsql