Oracle, PL/SQL and BLOB...
От: Strong  
Дата: 15.09.03 16:56
Оценка:
Подскажите пожалуйста, как мне сохранить содержимое BLOB в файл. Имеется БД с картинками в блобах — нужно написать на PL/SQL функцию сохраняющую картинку в файл. Через UTL_FILE у меня не получается.
Re: Oracle, PL/SQL and BLOB...
От: AlekseyFromUral  
Дата: 16.09.03 07:40
Оценка:
Здравствуйте, Strong, Вы писали:

S>Подскажите пожалуйста, как мне сохранить содержимое BLOB в файл. Имеется БД с картинками в блобах — нужно написать на PL/SQL функцию сохраняющую картинку в файл. Через UTL_FILE у меня не получается.


Я делал создание каталога и удаление файлов с помощью Java процедур
только нужно вызвать CALL dbms_java.grant_permission перед
выполнением. Тут думаю то же самое.
Re[2]: Oracle, PL/SQL and BLOB...
От: Strong  
Дата: 16.09.03 08:22
Оценка:
Спасибо, но
Java не подойдет — мне надо на PL/SQL.
Re[3]: Oracle, PL/SQL and BLOB...
От: AlekseyFromUral  
Дата: 16.09.03 08:29
Оценка:
Здравствуйте, Strong, Вы писали:

S>Спасибо, но

S>Java не подойдет — мне надо на PL/SQL.

Дык блин

CREATE OR REPLACE FUNCTION SMCreateDir(sDir VARCHAR2) RETURN VARCHAR2
AS LANGUAGE JAVA
NAME 'smutil.createdir(java.lang.String) return java.lang.String';;
/

SELECT SMCREATEDIR ( 'Имя файла' ) FROM DUAL;
Вот те пи эль эскуэль.

Мне нужно было на испытательном
сроке(2года назад) сделать инсталляцию БД без участия
администратора.
Фантазия сразу разыгралась
Re[3]: Oracle, PL/SQL and BLOB...
От: deepsky Украина  
Дата: 16.09.03 09:02
Оценка:
Здравствуйте, Strong, Вы писали:

S>Спасибо, но

S>Java не подойдет — мне надо на PL/SQL.

Если в блобе двоичные данные, только PL-ем, весьма не просто сохранить его в файл,
проще заюзать джаву для этих целей
[url=http://technet.oracle.com/doc/java.815/a64685/oraext4.htm#1043272]

To read from a BLOB, use the getBinaryStream() method of an oracle.sql.BLOB 
object to retrieve the entire BLOB as an input stream. This returns 
a java.io.InputStream object.
Re[4]: Oracle, PL/SQL and BLOB...
От: Strong  
Дата: 16.09.03 13:49
Оценка:
Ну что, никто не знает как это можно замутить на PL/SQL?
Java не предлагать?
Re[5]: Oracle, PL/SQL and BLOB...
От: deepsky Украина  
Дата: 16.09.03 14:14
Оценка:
Здравствуйте, Strong, Вы писали:

S>Ну что, никто не знает как это можно замутить на PL/SQL?

S>Java не предлагать?

Что б жизнь малиной не казалась, можно замесить внешнюю процедуру на С.
Re[6]: Oracle, PL/SQL and BLOB...
От: deepsky Украина  
Дата: 16.09.03 14:19
Оценка:
Здравствуйте, deepsky, Вы писали:

D>Здравствуйте, Strong, Вы писали:


S>>Ну что, никто не знает как это можно замутить на PL/SQL?

S>>Java не предлагать?
D>Что б жизнь малиной не казалась, можно замесить внешнюю процедуру на С.

Хотя если у Вас Оракл 9iR2, то он может писать бинарные файлы используя пакет UTL_FILE.
Re: Oracle, PL/SQL and BLOB...
От: Аноним  
Дата: 16.09.03 16:05
Оценка:
Здравствуйте, Strong, Вы писали:

S>Подскажите пожалуйста, как мне сохранить содержимое BLOB в файл. Имеется БД с картинками в блобах — нужно написать на PL/SQL функцию сохраняющую картинку в файл. Через UTL_FILE у меня не получается.


Для того что бы писать файлы нужны соответсвющие права доступа ( для Oracle). Почитай доку.
Re[2]: Oracle, PL/SQL and BLOB...
От: Strong  
Дата: 16.09.03 20:47
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Для того что бы писать файлы нужны соответсвющие права доступа ( для Oracle). Почитай доку.


Записать в файл у меня получается, но одна из проблем в том, что когда считываю из БЛОБа инф, то она читается как числовая , а писать надо в ВАРЧАР, т.е. в принципе я знаю аски-код символа — надо его конвертнуть и записать, но трабла в том что записывается не тот символ. например аски-код B — 42 — пишу CHR(42) — записывается почему-то *.
Re[3]: Oracle, PL/SQL and BLOB...
От: Аноним  
Дата: 17.09.03 14:52
Оценка:
Здравствуйте, Strong, Вы писали:

S>Здравствуйте, Аноним, Вы писали:


А>>Для того что бы писать файлы нужны соответсвющие права доступа ( для Oracle). Почитай доку.


S>Записать в файл у меня получается, но одна из проблем в том, что когда считываю из БЛОБа инф, то она читается как числовая , а писать надо в ВАРЧАР, т.е. в принципе я знаю аски-код символа — надо его конвертнуть и записать, но трабла в том что записывается не тот символ. например аски-код B — 42 — пишу CHR(42) — записывается почему-то *.


Была проблема
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.