2012-02-21 2 views
0

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

+0

Это разовая нагрузка? Продолжающийся процесс? Вы пытаетесь полностью автоматизировать его или это процесс, который предполагает вмешательство человека приемлемым? –

+0

Я хочу, чтобы он был автоматизирован. Но из того, что я понимаю, я могу использовать планировщик PL/SQL для этого. – antonpug

+0

дубликат http://stackoverflow.com/questions/6198863/oracle-import-csv-file-using-sqlplus – alfasin

ответ

4

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

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

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

0

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

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

0

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

Смежные вопросы