SQL-сервер - работает с большими файлами скрипта


У меня есть таблица базы данных на сервере разработки, которая теперь полностью заполнена после того, как я установил ее с помощью процедуры импорта для файла CSV, содержащего 1,4 миллиона строк.

Я запустил мастер публикации базы данных в таблице, и теперь у меня есть сценарий SQL 286MB на моей локальной машине. Проблема в том, что я не могу понять, как его запустить. Если я загружаю его в SQL Server Management Studio Express, я получаю окно предупреждения, в котором говорится: "операция не может быть завершенный."

любые идеи о том, как я могу получить этот скрипт SQL для запуска?

5 62

5 ответов:

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

другим вариантом является взглянуть на некоторые из других способов для импорта данных в формате CSV непосредственно.

использовать sqlcmd инструмент для выполнения файла..

sqlcmd -S myServer\instanceName -i C:\myScript.sql

этот инструмент (Big SQL Script File Runner) на CodePlex будет работать любой размер файла сценария с журналом и графическим интерфейсом.

добавление к ответу Гульзар Назим: Если вы все еще получаете сбой, попробуйте указать кодовая страница вашего файла SQL с помощью опции -f:

sqlcmd -S myServer\instanceName -d databaseName -i C:\myScript.sql -f 65001

Я пытался импортировать .файл дампа из SQLite (UTF-8 по умолчанию), и sqlcmd продолжал выдавать ошибку после обнаружения первого специального символа. -f 65001 исправил это для меня.

Почему бы просто не использовать DTS для импорта файла CSV напрямую?