MS SQL Server 2008: как экспортировать все таблицы в CSV?
Я должен перейти с MS SQL Server и теперь создаю новую базу данных ORACLE с данными, частично полученными из моих старых таблиц.
Для этого мне нужно получить данные из десятков таблиц в виде файлов в формате Unicode CSV или TXT с полями, разделенными "|".
Плохо то, что мастер экспорта по умолчанию MS SQL Server может экспортировать только одну таблицу за раз, и для настройки параметров экспорта для каждой таблицы требуется значительное время. Я начал экспортировать их вручную, но на 10-м столе я получил атаку нервов.
Знаете ли вы, как экспортировать ВСЕ таблицы в CSV или TXT с сервера SQL?
4 ответа
Более надежным решением является использование Oracle Migration Workbench. Раньше это была отдельная утилита от Oracle, но теперь она включена в Oracle SQL Developer. Если вы и типы данных CLOB/BLOB, то это путь. Вам также следует прочитать документацию Oracle о том, как выполнить миграцию, поскольку интерфейс миграции SQL Developer не очень интуитивен.
Если вы хотите пойти по пути экспорта всех таблиц в CSV, вы можете использовать BCP или SSIS. Есть очень хорошая статья о simple-talk об использовании некоторого t-sql и о генерации команд экспорта bcp для всех таблиц в базе данных. Вы также можете создать простой пакет служб SSIS для экспорта всех таблиц в csv, используя целевую задачу с плоским файлом.
Вот что-то быстрое и грязное, которое сгенерирует команды BCP для вас. Запустите его в SSMS, запустите вывод в командной строке.
USE AdventureWorks
SELECT 'bcp ' +
QUOTENAME(DB_NAME())
+ '.'
+QUOTENAME(SCHEMA_NAME(schema_id))
+ '.'
+QUOTENAME(name)
+ ' '+'out'+' '
+ name + '.csv -w -t"|" -E -S '
+ @@servername
+ ' -T'
FROM sys.objects
WHERE TYPE='u'
AND is_ms_shipped=0
Существует инструмент под названием Oracle Migration Workbench, который вы можете получить от Oracle, который предназначен именно для того, что вы хотите. Этот инструмент может принимать целые схемы, включая пользователей, и переносить их из MS Sql в Oracle.
Я использовал это кучу раз, и это отлично.
Вот еще немного информации http://download.oracle.com/docs/html/B10259_01/toc.htm
J
Для этого вы можете попробовать dbForge Studio для SQL Server и Oracle. Начальная страница, меню "База данных", затем "Экспорт данных", затем выберите "CSV" в мастере и другие параметры для вашей базы данных.
Если у вас есть доступ к SQL Management Studio (я полагаю, что даже бесплатная экспресс-версия также имеет эту функцию), вы можете щелкнуть правой кнопкой мыши на базе данных и выбрать Задачи -> Экспорт данных. В качестве пункта назначения выберите пункт назначения "Плоский файл", и вы можете настроить формат (фиксированная ширина, CSV и т. Д.).