Загрузка данных из CSV, размещенного в Интернете, в Oracle? - PullRequest
0 голосов
/ 21 февраля 2012

У меня нет времени, чтобы написать perl или что-то в этом роде, и у меня нет доступа администратора к бэкэнду, так как я могу получить данные из файла в интрасети (http://) и проанализировать его, чтобы создатьтаблица? Может быть, как-то через PL / SQL? Имейте в виду, у меня нет большого доступа администратора.

Ответы [ 3 ]

4 голосов
/ 21 февраля 2012

Если вы хотите, чтобы он был полностью автоматизирован

  • Вы можете использовать пакет UTL_HTTP для получения данных с HTTP-сервера
  • Вы можете либо проанализировать ответ CSV самостоятельно, используя INSTR и SUBSTR, либо использовать пакет UTL_FILE, чтобы записать данные в файл в файловой системе сервера базы данных, а затем создать внешнюю таблицу, которая анализирует только что созданный файл CSV.
  • Затем вы можете вставить проанализированные данные в таблицу, которую вы уже создали (я предполагаю, что данные CSV каждый раз в одном и том же формате).
  • Вы можете использовать пакет DBMS_SCHEDULER или DBMS_JOB для планирования задания

Учетной записи базы данных Oracle, которую вы используете, необходимо предоставить доступ ко всем этим пакетам.

0 голосов
/ 23 февраля 2012

Создайте внешнюю таблицу, которая ссылается на ваш файл CSV.Это означает, что вы можете запускать операторы выбора для файла из Oracle.

0 голосов
/ 21 февраля 2012

Вы можете загрузить файл на хост-компьютер, а затем использовать SQL * Loader для заполнения таблицы.

Другими способами существуют некоторые мастера, которые могут быть проще, чем SQL * Loader, если вы используете IDE, такие как PLSQLDeveloper (Tools-> Text Importer) или SQLDeveloper (щелкните правой кнопкой мыши Таблицы-> Импорт данных).

...