为什么我不能使用NEWSEQUENTIALID()作为列的默认值?


18

我试图在Management Studio中创建一个表,并在阅读了有关新功能(从SQL 2005开始)后NEWSEQUENTIALID(),以为我会尝试一下。

这就是我在做什么:

在此处输入图片说明

但这不是让我。我收到的错误消息是:

'FormTemplate (Forms)' table - Error validating the default for column 'FormTemplateId'.

我在这里错过了一个把戏吗?我肯定在运行SQL Server 2008 R2。

Answers:


5

您可以通过忽略第一个和第二个警告来解决SQL Server Management Studio中的此错误。更改将被保存。


18

使用CREATE TABLE,而不是GUI。

这是在SSMS中的错误,已经在这里报道的还有这里的连接。


5
@ 5arx:探寻5年以上的MySQL严重错误。MS相较而言非常敏锐
gbn

1
@ 5arx好吧,当您考虑Microsoft支持的产品数量以及它们在每个发行版中添加的新功能时,我认为可以理解,GUI中一个易于避免的错误应该流连多年。作为客户,这对我们来说仍然很糟糕,但作为开发人员,我可以理解。
Nick Chammas

1
@ 5arx:作为开发人员,像大多数人一样使用原始SQL。这就是为什么我从未见过此bug的原因
gbn

2
我是使用数据库的开发人员,而不是数据库开发人员。自90年代末以来,我还没有看到任何人使用原始SQL创建表。我的意思是,如果要发布GUI,请确保它可以工作。就这样。
5arx 2011年

2
在销毁错误方面,UI并没有获得太多优先权。核心引擎应该这样做。UI团队的工作人员并不多,因此他们可以按照管理层的要求去做(如果现在还不是Azure,就不能解决问题)。:(
mrdenny
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.