Возможный дубликат:
Альтернатива Microsoft SQL для команд Oracle Imp и Exp
Я ищу инструмент командной строки или команду SQL для экспорта / импорта таблицы или полной базы данных. Очень похоже на команды imp и exp баз данных Oracle.
Какие-либо предложения?
Если вы используете MS SQL Server 2005, я думаю, что вы ищете Службы интеграции. Это продукт, который выполняет множество функций, включая импорт и экспорт. Это заменяет Услуги преобразования данных это ваш основной вариант в более ранних версиях.
Самый простой способ справиться с этим - использовать мастер импорта и экспорта в SQL Server Management Studio, хотя есть и другие способы его вызова. Узнать больше.
Функция SQL Server, которая больше всего похожа на imp или exp, вероятно, является bcp. Я считаю, что bcp.exe поставляется со «стандартными» инструментами SQL. Объекты сервера SSIS не поставляются со стандартными инструментами, и вы можете столкнуться с проблемами лицензирования, если вы не запускаете свое приложение на SQL Server.
BCP - это утилита, которая позволяет экспортировать данные из таблицы в файл или импортировать из файла в таблицу. BCP поставляется с SQL Server около 20 лет, и это очень примитивно. Он понимает только получение данных из таблиц в файлы или из файлов в таблицы. Он не обрабатывает таблицы создания или индексы. Он не обрабатывает родительско-дочерние отношения. Если вам нужно экспортировать / импортировать много таблиц, вам придется делать их по одной. Если вам нужно создать объекты в месте назначения, лучше всего использовать функции автоматического создания сценариев SSMS для создания сценариев, которые будут создавать ваши таблицы и индексы. Затем вы можете запустить эти сценарии в месте назначения.
BCP использует стандартные интерфейсы «быстрой загрузки», которые доступны через OLEDB. Если программа написана на .Net, вы должны иметь возможность использовать эти интерфейсы для кодирования ваших собственных переводов. Это было бы лучшим решением, чем обстреливание, потому что вам не нужно беспокоиться о том, установлена ли на клиентской машине сторонняя утилита.
Другой способ справиться с этим - использовать связанные серверы, но они, как правило, медленные, и для передачи больших объемов данных может потребоваться много места для файла журнала.
Если вам нужно делать это на регулярной основе, вы можете посмотреть на репликацию моментальных снимков. Это серверное решение, требующее некоторой настройки и настройки.