NEWSEQUENTIALID()を列のデフォルト値として使用できないのはなぜですか?


18

Management Studioでテーブルを作成しようとしていますが、新しい(SQL 2005以降の)NEWSEQUENTIALID()関数について読んだ後、試してみたいと思いました。

これは私がやっていることです:

ここに画像の説明を入力してください

しかし、それは私をさせません。私が得るエラーメッセージは次のとおりです。

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

ここにトリックがありませんか?私は間違いなくSQL Server 2008 R2を実行しています。

回答:


5

最初と2番目の警告を無視するだけで、SQL Server Management Studioのこのバグを回避できます。変更が保存されます。


18

CREATE TABLEGUIではなくを使用してください。

これはすでに、SSMSのバグであるここで報告としてだけでなく、ここでの接続に。


5
@ 5arx:MySQLの5年前の重大なバグを調べます。MSは比較的鋭い
-gbn

1
@ 5arxさて、Microsoftがサポートする製品の数と、各リリースで追加される新機能を考慮すると、GUIの簡単に回避可能なバグが何年も続くことが理解できると思います。顧客として私たちにはまだ悪いように見えますが、開発者としては理解できます。
ニックチャマス

1
@ 5arx:開発者として、ほとんどの人が行うように生のSQLを使用します。これが私がこのバグを見たことがない理由です
-gbn

2
私はデータベース開発者ではなく、データベースを使用する開発者です。90年代後半から、生のSQLを使用してテーブルを作成する人は誰もいません。私のポイントは、GUIをリリースする場合、それが機能することを確認することです。それで全部です。
5arx

2
バグを殺すということになると、UIはそれほど優先順位が高くなりません。コアエンジンが実行します。UIチームにはまったく多くの人がいないので、管理者の指示どおりに処理できます(現時点でAzureでない場合は修正されていません)。:(
mrdenny
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.