0

问题:

在 SQL-Server 中,是否可以将整数(不是 GUID)作为 ID(主键),但不使用 AutoID/AutoIncrement,这样我可以在需要时手动设置 ID,而不会遇到麻烦多线程环境(Web 应用程序)?

如果是这样,如果我必须连续插入两行以上,并且没有给出主键,我该如何设计生成插入 ID 的函数,以便它是线程安全的,我不会得到相同的2+ 插入/记录的 id ?

4

1 回答 1

0

我不确定您是否不能为此使用增量标识,但您可以使用 UNIQUEIDENTIFIER 模拟唯一键。

PRINT CONVERT( BIGINT, CONVERT( VARBINARY, NEWID() ) )

基本上,这向您展示了如何将 uniqueidentifier ( NEWID()) 转换为 bigint。因此,您将能够实现您想要的结果,但将其放入函数中。

于 2013-01-28T10:11:12.563 回答