Вниз
Скачать: CL | DM;

Не могу толком записать в блоб поле картинку в оракл через ODAC   Найти похожие ветки 

← →
Relaxxx   (2004-08-30 17:23) [0]

Вернее могу, но только файлы очень маленького размера, 2кб, а мне нужно до 50. Вот как я делаю:

 MyImgStream := TMemoryStream.Create;

 SqlQ1.Close;
 SqlQ1.SQL.Clear;
 SqlQ1.SQL.Text:="INSERT INTO money.odac_blob(ID, title, Pic) "+
                 "VALUES(:parID_CL_OBJ,:parNM_CL_OBJ,:parIMG_BLOB)";
 SqlQ1.Params.Items[0].DataType:=ftInteger;
 SqlQ1.Params.Items[1].DataType:=ftString;
 SqlQ1.Params.ParamByName("parIMG_BLOB").DataType:=ftGraphic;

 SqlQ1.Params.Items[0].Value:=103;
 SqlQ1.Params.Items[1].Value:="qwerty1";

 if Image1.Picture.Bitmap.Empty=False then
 begin
   Image1.Picture.Graphic.SaveToStream(MyImgStream);
   SqlQ1.Params.ParamByName("parIMG_BLOB").LoadFromStream(MyImgStream,ftBlob);
 end;

 SqlQ1.ExecSQL;
 MyImgStream.Free;

Когда файл большой, даже 5 кб не хочет пишет ошибку
ORA-01461: допускается привязка LONG значения только для занесения в столбец LONG????
Неужели в BLOB нельзя записывать большие файлы???

З.Ы. У меня Оракл 8.0.5.0


← →
Falendysh   (2004-08-30 17:37) [1]

У меня была такая же проблема с MySQL. Надо просто настроить сервер БД - проблема там, а не в программе.


← →
Reindeer Moss Eater ©   (2004-08-30 17:38) [2]

Тип LONG - устаревший тип данных для длинных строк.


← →
Relaxxx   (2004-08-30 17:38) [3]

а что ж настроить то???


← →
Reindeer Moss Eater ©   (2004-08-30 17:40) [4]

Использовать адекватный тип данных. В первую очередь.


← →
Relaxxx   (2004-08-30 17:55) [5]

Помоему как раз для этого все и используют БЛОБ, а причем тут тип LONG я не догадываюсь, так как у меня тип поля BLOB!!!!!


← →
Reindeer Moss Eater ©   (2004-08-30 17:59) [6]

Тогда твой синтаксис INSERT никуда не годен.
Он не для полей BLOB.


← →
Relaxxx   (2004-08-30 18:03) [7]

Ну а как вы тогда, посоветуете, я смотрел демку в ODAC, так там я могу записывать хоть метровые файлы, но какая-то фигнь, демка работает только когда ОДАК включена опция Net, а мне это не подходит


← →
Reindeer Moss Eater ©   (2004-08-30 18:05) [8]

Опция NET здесь не при чем.
Все работает и без нее.


← →
Relaxxx   (2004-08-30 18:19) [9]

Как раз-то и причем. Мне сама ODACовская демка когда я отключаю Net выдает ошибку ORA-01403 данных не найдено, а вот когда нет включен все работает. Может у меня плохая версия ODAC, у меня 4.0.5.1.8


← →
Reindeer Moss Eater ©   (2004-08-30 18:22) [10]

Еще раз для тех кто:
Опция NET здесь не виновата.


← →
Relaxxx   (2004-08-30 18:23) [11]

Ладно, так в чем тогда проблема???


← →
Reindeer Moss Eater ©   (2004-08-30 18:24) [12]

В тексте INSERT запроса.
Еще шесть постов тому назад.


← →
Relaxxx   (2004-08-30 18:30) [13]

Издеваетесь???
Тогда какой синтаксис правельнеый?


← →
Reindeer Moss Eater ©   (2004-08-30 18:34) [14]

Мне текст SQL из демосов здесь опубликовать, или догадаешься его в демопроекте разглядеть?

Не работают так в Оракле с БЛОБ полями.
Сначала в поле надо вставить пустой блоб объект. Потом заселекстить его, получив локатор на него. И только потом что -либо писать в это поле используя локатор LOB.

Издеваетесь???
А что, нельзя?


← →
Relaxxx   (2004-08-30 18:54) [15]

Я демопроект вдоль и впоперек просмотрел, не пашет у меня демка без Net, и что ее смотреть если она толком не работает, если б работала я уже давно б так и сделал!!! какая у тебя версия ОДАК


← →
Reindeer Moss Eater ©   (2004-08-30 19:03) [16]

Ты даун или где?
Ты можешь посмотреть текст для INSERT SQL в демо проекте?
ТЕКСТ ЗАПРОСА на вставку в таблицу в блоб поле.
Я тебе всю ветку про текст говорю. Про текст запроса в демке и про твой текст запроса.

Мне пофик работает ли демка у тебя или нет. И всем остальным пофик.

Твой текст insert неправильный.
В демке текст правильный.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.02 c
1-1094814005
HeKTO
2004-09-10 15:00
2004.09.26
HotKey


14-1094475774
GRAND25
2004-09-06 17:02
2004.09.26
Реализация БД-приложений


14-1094375957
Igorekss
2004-09-05 13:19
2004.09.26
Слежение за файлами


14-1094435375
Думкин
2004-09-06 05:49
2004.09.26
С днем рождения! 6 сентября


4-1092660212
Manfred
2004-08-16 16:43
2004.09.26
Какое сообщение генерится при нажатии CTRL+ALT+DEL?




   Наверх