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

SSMS импортирует большую таблицу

Я пытаюсь переместить несколько таблиц данных между двумя базами данных MSSQL 2008, я создал сценарии вставки данных для одной таблицы, которая довольно велика (около 3,5 млн строк). Размер сценария составляет около 3 ГБ. Когда я пытаюсь открыть скрипт с помощью SSMS, я получаю следующую ошибку:

Есть ли способ заставить SSMS позволить мне открыть этот скрипт или экспортировать данные в какой-либо другой формат, который легче импортировать.

Ваша первая большая проблема заключается в том, что вы пытаетесь загрузить 3 ГБ данных в виде сценария в SSMS. Я не уверен, насколько умен SSMS, но держу пари, что он пытается загрузить весь файл в память, что приведет к его взрыву, потому что это 32-битное приложение - 32-битные приложения имеют максимальное адресное пространство 4 ГБ, из которых доступно 2 ГБ к процессу.

Для этой работы лучше использовать инструменты массового импорта / экспорта, они больше подходят для перемещения больших объемов данных:

О массовом импорте и массовом экспорте

Вы, вероятно, также не хотите (я подозреваю) запускать это как транзакционную вставку:

Оптимизация производительности массового импорта

Предварительные условия для минимального ведения журнала при массовом импорте

Вы можете попробовать запустить этот сценарий с помощью sqlcmd из командной строки.