Почему я не могу использовать NEWSEQUENTIALID () в качестве значения по умолчанию для моего столбца?

18

Я пытаюсь создать таблицу в Management Studio и, прочитав о новой (начиная с SQL 2005) NEWSEQUENTIALID()функции, решил попробовать.

Это то, что я делаю:

введите описание изображения здесь

Но это не позволяет мне. Я получаю сообщение об ошибке:

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

Я пропустил трюк здесь? Я определенно использую SQL Server 2008 R2.

5arx
источник

Ответы:

5

Вы можете обойти эту ошибку в SQL Server Management Studio, просто проигнорировав первое и второе предупреждение. Изменения будут сохранены.

splattne
источник
18

Используйте CREATE TABLE, а не графический интерфейс.

Это ошибка в SSMS, о которой уже сообщалось здесь, а также здесь, в Connect.

ГБН
источник
5
@ 5arx: рассмотрите 5-летние критические ошибки для MySQL. MS довольно резкий в сравнении
ГБНО
1
@ 5arx Что ж, если учесть количество продуктов, которые Microsoft поддерживает, и новые функции, которые они добавляют с каждым выпуском, я думаю, что понятно, что легко устраняемая ошибка в GUI должна сохраняться годами. Это все еще выглядит плохо для нас как для клиентов, но как разработчик я могу понять.
Ник Чаммас
1
@ 5arx: как разработчик, используйте сырой SQL, как это делают большинство людей. Вот почему я никогда не видел эту ошибку
gbn
2
Я разработчик, который использует базы данных, а не разработчик базы данных. Я не видел, чтобы кто-нибудь использовал сырой SQL для создания таблиц с конца 90-х годов. Я хочу сказать, что если вы выпускаете графический интерфейс, убедитесь, что он работает. Это все.
5
2
Пользовательский интерфейс не получает большого приоритета, когда дело доходит до уничтожения ошибок. Основной двигатель делает то, что должен. Команда UI точно не имеет большого количества ребят, поэтому они получают то, что могут, как диктует руководство (если это не Azure, в данный момент это не исправлено). :(
Мрденный