Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Выгрузка\загрузка файлов в Oracle  [new]
cobalt_frog
Member

Откуда: Железные острова
Сообщений: 180
Добрый день,

подскажите плз как сделать сделать выгрузку\загрузку файлов в Oracle на внешнем хранилище. Файлы текстового формата. Думаю надо сделать внешнюю таблицу, которая через директорию в Oralce смотрит на внешнее хранилище.
Можно хотя бы приблизительно указать как это делается, какие технологии используются и какие пакеты в Oracle для этого существуют. Если можно то ссылки.
Заранее благодарю за помощь.
30 окт 17, 15:34    [20912390]     Ответить | Цитировать Сообщить модератору
 Re: Выгрузка\загрузка файлов в Oracle  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 6723
cobalt_frog,

залинковать внешнее хранилище на локальную фс
30 окт 17, 15:37    [20912404]     Ответить | Цитировать Сообщить модератору
 Re: Выгрузка\загрузка файлов в Oracle  [new]
cobalt_frog
Member

Откуда: Железные острова
Сообщений: 180
env,

а можно поподробнее?
30 окт 17, 15:47    [20912461]     Ответить | Цитировать Сообщить модератору
 Re: Выгрузка\загрузка файлов в Oracle  [new]
cobalt_frog
Member

Откуда: Железные острова
Сообщений: 180
Запись будет инициироваться из Java в виде потока. Надо сохранить файл, и при необходимости отдать его обратно, используя идентификатор клиента.
30 окт 17, 17:11    [20912851]     Ответить | Цитировать Сообщить модератору
 Re: Выгрузка\загрузка файлов в Oracle  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 6723
cobalt_frog
Запись будет инициироваться из Java в виде потока

И как планируется определять завершение записи? На чьей стороне сериализация?
30 окт 17, 17:51    [20913052]     Ответить | Цитировать Сообщить модератору
 Re: Выгрузка\загрузка файлов в Oracle  [new]
cobalt_frog
Member

Откуда: Железные острова
Сообщений: 180
Покурил доки...я так понял если требуется запись во внешний файл, а не в базу, то лучше испльзовать тип BFILE. Но он не поддерживает запись, только чтение файла по локатору. Что если сделать следующим образом:
1 Ява вызывает в Oracle хранимую процедуру (написанную на java)
2 Оракловая процедура сохраняет этот поток в виде файла в директории и одновременно создает локатор для bfile и сохраняет локаторы в соответствующей таблице.

Остается вопрос как из явы получить обратно файл при необходимости имея идентификатор в таблице на соответсвующий локатор Bfile.
30 окт 17, 17:58    [20913085]     Ответить | Цитировать Сообщить модератору
 Re: Выгрузка\загрузка файлов в Oracle  [new]
cobalt_frog
Member

Откуда: Железные острова
Сообщений: 180
env
cobalt_frog
Запись будет инициироваться из Java в виде потока

И как планируется определять завершение записи? На чьей стороне сериализация?


а как будет правильней по вашему мнению? есть идеи?
30 окт 17, 18:26    [20913181]     Ответить | Цитировать Сообщить модератору
 Re: Выгрузка\загрузка файлов в Oracle  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 6723
cobalt_frog
есть идеи?

Одна. Нормально описать задачу.

Пока что звучит как вопрос "я хочу построить небоскрёб из фанеры и пенопласта, мне их лучше склеить с помощью ПВА или сварка лучше подойдёт?".

Вызывать оракловую jvm из внешней джавы ради сериализации в локальный файл - звучит бредово.
31 окт 17, 08:40    [20914206]     Ответить | Цитировать Сообщить модератору
 Re: Выгрузка\загрузка файлов в Oracle  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 6723
cobalt_frog
если требуется запись во внешний файл, а не в базу, то лучше испльзовать тип BFILE

BFILE нужен для того, чтобы не хранить LOB в БД. Фактически это локатор на внешний файл, позволяющий вернуть LOB по адресу в фс.

Поэтому никто не мешает сохранить поток в файл из внешней джавы и сохранить в БД только путь к нему в адресном пространстве сервера БД.
Но до адекватного описания задачи, советовать подобное не вижу смысла.
31 окт 17, 08:49    [20914235]     Ответить | Цитировать Сообщить модератору
 Re: Выгрузка\загрузка файлов в Oracle  [new]
cobalt_frog
Member

Откуда: Железные острова
Сообщений: 180
env
cobalt_frog
если требуется запись во внешний файл, а не в базу, то лучше испльзовать тип BFILE

BFILE нужен для того, чтобы не хранить LOB в БД. Фактически это локатор на внешний файл, позволяющий вернуть LOB по адресу в фс.

Поэтому никто не мешает сохранить поток в файл из внешней джавы и сохранить в БД только путь к нему в адресном пространстве сервера БД.
Но до адекватного описания задачи, советовать подобное не вижу смысла.


спс за помощь
31 окт 17, 16:28    [20916317]     Ответить | Цитировать Сообщить модератору
 Re: Выгрузка\загрузка файлов в Oracle  [new]
Aliona
Member

Откуда: Питер
Сообщений: 4023
cobalt_frog

спс за помощь

Основной совет был такой:
env
Одна. Нормально описать задачу.
31 окт 17, 17:56    [20916790]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить