Oracle SQL результат в экспорт файла DBF - PullRequest
2 голосов
/ 24 января 2010

Я хотел бы экспортировать данные из таблицы Oracle в файл * .dbf (например, excel) с помощью сценариев PL / SQL. Есть ли доступные коды?

Ответы [ 2 ]

1 голос
/ 24 января 2010

Есть несколько способов сделать это. Самый простой способ - использовать IDE, например, SQL Developer или TOAD, которые предлагают эту функцию.

Если вы хотите вызвать его из PL / SQL, то встроенных функций Oracle нет. Тем не менее, относительно просто построить что-то, используя UTL_FILE, который может записывать записи, разделенные значениями. Их можно подобрать в Excel.

Обратите внимание, что разделитель по умолчанию - , (запятая - "C" в .CSV) - вызовет проблемы, если ваши экспортированные данные содержат запятые. Поэтому вам нужно будет использовать мастер импорта данных, а не щелкнуть правой кнопкой мыши Открыть с помощью ...

Кстати, вероятно, плохая идея использовать суффикс .dbf. В файловой системе Oracle предполагаемое значение - это файл базы данных, то есть часть инфраструктуры базы данных. Это просто соглашение, но нет смысла бесполезно путать людей. Предполагаемые альтернативы включают .csv, .dmp или .exp.

редактировать

Если вас интересует только экспорт данных для переноса в другую базу данных Oracle, вам следует воспользоваться утилитой Data Pump. Это поставляется с API, поэтому его можно использовать из PL / SQL. В качестве альтернативы мы выгружаем данные через внешние таблицы, объявленные с помощью драйвера DataPump.

0 голосов
/ 24 января 2010

Вы также можете рассмотреть возможность использования функции внешних таблиц Oracle. По сути, это позволяет сопоставить файл CSV с «виртуальной» таблицей и вставить в него (и, следовательно, в файл).

Руководство по концепции внешних таблиц Oracle

...