2011-01-28 8 views
2

Я ищу конвертировать базу данных, которая была преобразована в формат 2008 года в формате 2000. Я пробовал все методы, доступные в SQL Server Management Studio. Экспортировать данные, базу данных сценариев, все это, и все они терпят неудачу. Экспорт, кажется, не экспортирует все необходимое, а сгенерированные скрипты всегда содержат ошибки. База данных настолько огромная, что невозможно найти ошибки в сгенерированных скриптах.Преобразование SQL Server 2008 до 2000

Есть ли у кого-нибудь советы.

ответ

6

У вас будет экспорт/импорт с использованием SSIS/DTS (будь то мастер или руководство) или SMO. Или использовать третий участник инструмент для сравнения, такого как Red Gate SQL Compare

Там не никакого варианта DownGrade

+2

В этой ситуации SQLCompare стоит каждого пенни, это будет стоить. Конечно, у вас все еще могут быть проблемы, если вы использовали какие-либо функции SQL Server 2008, которых нет в 2000 году. – HLGEM

0

Может быть, вы должны пойти в другом направлении. Создайте новую, пустую базу данных на SQL 2000 и используйте функцию импорта, чтобы вытащить ее из SQL 2008. Если база данных SQL 2008 не использует функции, характерные для 2005/2008 (что не должно, поскольку вы сказали, что она была преобразована из 2000 уже), тогда вы должны быть в порядке. Единственная проблема при импорте объектов, имеющих зависимости. В этом случае, например, обязательно сначала импортируйте все таблицы, которые действуют как ПК в другие таблицы FK. Затем выполните функции. Затем сделайте «Просмотры», поскольку у вас могут быть процедуры хранения, зависящие от этих представлений. Затем выполните SP. Возможно, вам придется вручную скомпилировать определенные объекты и поместить их в определенном порядке, если у вас есть перекрывающиеся зависимости.

2

Вы можете использовать SQL генератор сценария для извлечения базы данных дефиниции и данных и запускать этот сценарий в sql 2000.

Это легко доступно из http://www.sqlscriptgenerator.com/

0

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

В дополнение к SQL Compare, о котором уже упоминалось, я также использовал ApexSQL Diff в подобных проектах. Вы не ошибетесь ни с одним из них. Оба инструмента имеют высочайшую высоту.

Причина Сгенерировать скрипты создает скрипты с ошибками, так это то, что он не учитывает порядок зависимостей и возвращается к ошибке, которая существует в sp_depends.

Смежные вопросы