Форум: "Базы";
Текущий архив: 2007.06.03;
Скачать: [xml.tar.bz2];
ВнизBLOBы в Oracle Найти похожие ветки
← →
Grant (2007-03-15 11:37) [0]Всем привет. Есть такой вопросик.
Есть таблица в базе Oracle у которой есть BLOB поле.
В коде Delphi я все запросы на изменение базы пишу следующим образом:
TQuery.SQL.ADD("INSERT INTO....");
TQuery.ExecSQL;
.....
Я знаю что при записи BLOB в ORacle есть свои особенности.
Мне надо запихнуть в BLOB поле базы например картинку.
Могу ли я зделать это именно таким способом записи в базу какой описал я выше(Другие способы пока не интересуют). Заранее спасибо.
← →
Desdechado © (2007-03-15 11:47) [1]параметры умеешь пользовать?
← →
Grant (2007-03-15 12:20) [2]Умею.
← →
Desdechado © (2007-03-15 12:21) [3]Вот и вся особенность.
← →
ANB © (2007-03-15 12:27) [4]
> Desdechado © (15.03.07 12:21) [3]
> Вот и вся особенность.
К сожалению - не вся.
В параметр блобик не лезет.
Чтобы записать блоб, нужно проинициализировать локатор (обычно это делают хранимкой), потом, получив
> после
выполнения хранимки указатель на локатор в OUT параметре, загружают в него данные.
Вот такой хитрый оракл.
Правда, Саша Просторов нашел таки способ делать это более по человечески - т.е. таки грузить параметр до выполнения хранимки/DML, но тоже с извращениями - генериться пустой временный локатор из какого то пакета. Ща у меня под рукой исходника этой фичи нету, но помню, что он дня три парился, пока заработало по человечески. Зато очень удобно. Тока ODAC при этом слегка поломали.
← →
ANB © (2007-03-15 12:28) [5]
> TQuery.SQL.ADD("INSERT INTO....");
Нехороший способ. TQuery.SQL.Text := - намного удобнее.
Кистате, через BDE с ораклом работать - самое последнее дело.
← →
Desdechado © (2007-03-15 12:31) [6]Ну, если в БДЕ так криво, тогда увы.
В dbExpress все путем, никаких загогулин.
← →
Val © (2007-03-15 12:35) [7]Да в бде, как мне помнится тоже не было проблем.
Манипуляции с локатором пришлось производить на клиенте при переходе на компоненты прямого доступа.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2007.06.03;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.053 c