Назад | Перейти на главную страницу

Почему утилита SQL 2008 «Сгенерировать сценарии…» создала недопустимый сценарий SQL?

У меня есть база данных SQL2008, которую нужно восстановить в экземпляр SQL2005.

Я прошел через мастер «Сгенерировать сценарии ...», настроил его для совместимости с SQL2005 и сгенерировал сценарий SQL 62 МБ.

Когда я запускаю его на экземпляре SQL2005, он выдает всевозможные ошибки, и некоторые из них действительно странные. они описывают неверную базу данных.

Есть идеи, как это могло случиться? Этот сценарий SQL был создан SQL Server Management Studio всего за несколько минут до того, как я попытался его восстановить, и не был изменен.

Почему это приведет к созданию недопустимого файла SQL? Разве это не просто описание базы данных SQL2008, которая предположительно действительна, поскольку мы ее используем?

В частности, меня озадачивают ошибки при вставке повторяющихся ключей. Если в сценарии SQL есть ключевое ограничение, то в таблице SQL2008 должно быть то же самое. Так как же нам получить там строки, которые нарушают это ключевое ограничение?

Обновить:

Это как-то связано с переходом на SQL2005. Я запустил сценарий, чтобы он был совместим с SQL2008, затем развернулся и запустил полученный сценарий на том же экземпляре SQL, из которого он только что пришел, и он прошел без ошибок. Проблема возникает, когда я пытаюсь сделать его совместимым с SQL2005.

Еще одно обновление:

Я заново сгенерировал сценарий, чтобы он был совместим с SQL2005, затем развернулся и запустил его на экземпляре SQL2008. Работало нормально. Так...

Решение:

Вы не можете создать сценарий для SQL2005 и запустить его в Express. Я перешел на стандарт, и все заработало.

Проблема заключалась в том, что я пытался импортировать в SQL 2005 Express. Я перешел на стандарт SQL 2005 и смог запустить сценарий без ошибок.

Я не знаю, встроено ли это в настоящее время в SQL Server 2008 Management Studio, но в 2005 году у вас было больше возможностей при написании сценариев, если вы использовали отдельную загрузку, Мастер публикации базы данных SQL Server Получи это здесь: Центр загрузок Microsoft

Это будет вам полезно.