Я пытаюсь переместить несколько таблиц данных между двумя базами данных MSSQL 2008, я создал сценарии вставки данных для одной таблицы, которая довольно велика (около 3,5 млн строк). Размер сценария составляет около 3 ГБ. Когда я пытаюсь открыть скрипт с помощью SSMS, я получаю следующую ошибку:
Есть ли способ заставить SSMS позволить мне открыть этот скрипт или экспортировать данные в какой-либо другой формат, который легче импортировать.
Ваша первая большая проблема заключается в том, что вы пытаетесь загрузить 3 ГБ данных в виде сценария в SSMS. Я не уверен, насколько умен SSMS, но держу пари, что он пытается загрузить весь файл в память, что приведет к его взрыву, потому что это 32-битное приложение - 32-битные приложения имеют максимальное адресное пространство 4 ГБ, из которых доступно 2 ГБ к процессу.
Для этой работы лучше использовать инструменты массового импорта / экспорта, они больше подходят для перемещения больших объемов данных:
Вы, вероятно, также не хотите (я подозреваю) запускать это как транзакционную вставку:
Оптимизация производительности массового импорта
Предварительные условия для минимального ведения журнала при массовом импорте
Вы можете попробовать запустить этот сценарий с помощью sqlcmd из командной строки.