gpt4 book ai didi

sql-server - 自增唯一标识符

转载 作者:太空狗 更新时间:2023-10-30 01:39:41 25 4
gpt4 key购买 nike

基本上我想以与标识类似的方式使用 uniqueidentifier。我不想向其中插入值,它应该自动插入值,每行都有不同的值。我无法在 uniqueidentifier 类型的列上设置自动增量(属性“autoincrement”设置为 false 且不可编辑)。

最佳答案

或者更好:使用 newsequentialid() 作为 UNIQUEIDENITIFER 列的默认值。这将为您提供一系列连续的 GUID。

CREATE TABLE dbo.YourTable   
(SerialID UNIQUEIDENTIFIER
CONSTRAINT DF_SerialID DEFAULT newsequentialid(),
.... (other columns)......
)

问题是:newsequentialid 可用作列默认值 - 您不能将其作为函数或任何东西调用。但这似乎符合您的要求。

更新:SQL Server Management Studio 中似乎存在一个已确认的错误,该错误会阻止将 newsequentialid() 指定为交互式表设计器中列的默认值。

参见:http://social.msdn.microsoft.com/Forums/en-US/sqltools/thread/cad8a4d7-714f-44a2-adb0-569655ac66e6

解决方法:在不指定任何默认值的情况下创建表,然后在普通查询窗口中输入此 T-SQL 语句并运行它:

ALTER TABLE dbo.YourTable
ADD CONSTRAINT DF_SerialID DEFAULT newsequentialid() FOR SerialID

这应该可以解决问题!

关于sql-server - 自增唯一标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2837559/

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