Текущий архив: 2004.05.30;
Скачать: CL | DM;
ВнизХранимая процедура - запрос - BLOB - поле Найти похожие ветки
← →
TATIANA (2004-05-05 09:52) [0]Здравствуйте господа мастера !
База создана в IBExpert , использую компонент - IBQuery , IBStoredProc , Image (показываю на форме) . Работаю с базой через хранимые процедуры , запрос сделанный с помощью IBQuery1 не может изменяться .
if OpenPictureDialog1.Execute then
Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
B1STR := TStringStream.Create("");
Image1.Picture.Graphic.SaveToStream(B1STR);
IBQuery1PLAN_KV.LoadFromStream(B1STR);
B1STR.Free;
.....
IBStoredProc1.ParambyName("plan_kv").AsBlob := IBQuery1["PLAN_KV"];
IBStoredProc1.Prepare;
IBStoredProc1.ExecProc;
IBStoredProc1.UnPrepare
При записи из потока в поле -
IBQuery1PLAN_KV.LoadFromStream(B1STR);
дает сообщение об ошибке : "Not edit mode" .
Поле записывается в базу , но это сообщение очень раздражает .
Вопрос такой :
Как записать передачу BLOB-поля в хранимую процедуру минуя запись - IBQuery1PLAN_KV.LoadFromStream(B1STR); ?
Всем спасибо .
Поздравляю всех с прошедшими и наступающими праздниками .
← →
Курдль © (2004-05-05 10:02) [1]Может так:
IBQuery1.Edit;
IBQuery1PLAN_KV.LoadFromStream(B1STR);
IBQuery1.Post;
← →
TATIANA (2004-05-05 12:08) [2]Проблема в том , что с IBQuery1 методы Edit и Post не работают .
← →
Johnmen © (2004-05-05 12:21) [3]Работают.
UpdateObject+F1
← →
Соловьев © (2004-05-05 12:31) [4]
> TATIANA (05.05.04 12:08) [2]
IBDataSet - самое оно
← →
TATIANA (2004-05-05 15:34) [5]Все это хорошо . UpdateObjct требует наличия IBUpdateSQL , а в нем есть 3 строки :
- ввод ;
- удаление ;
- изменение ;
Я работаю с данными с помощью хранимых процедур (IBStoredProc) ,
мне придется делать лишние действия .
← →
Соловьев © (2004-05-05 15:38) [6]
> TATIANA (05.05.04 15:34) [5]
А где сказано что с ХП нельзя работать через запрос? наоборот рекомендуют :)
← →
Johnmen © (2004-05-05 15:46) [7]>TATIANA
>IBQuery1PLAN_KV.LoadFromStream(B1STR);
>Я работаю с данными с помощью хранимых процедур (IBStoredProc) ,
Здесь явное противоречие...
← →
TATIANA (2004-05-05 16:22) [8]IBQuery1PLAN_KV.LoadFromStream(B1STR);
Потому и задала вопрос , что не знаю как правильно , а на этой строке дает сообщение .
← →
TATIANA (2004-05-07 09:56) [9]Господа , здравствуйте !
Возвращаюсь к нашему любимому вопросу .
Заменила IBQuery на IBDataSet1 и что-то неправильно в этой записи , а что не знаю , пожалуйста подскажите :
IBDataSet1.ModifySQL.Clear;
IBDataSet1.ModifySQL.Add("update KVARTIRA set PLAN_KV = :PLAN_KV ");
IBDataSet1.ModifySQL.Add("where KOD_KVAR = :OLD_KOD_KVAR");
IBDataSet1.Params[0].LoadFromStream(b1str);
IBDataSet1.Params[1].AsInteger := IBDataSet1["kod_kvar"];
IBDataSet1.ExecSQL;
На строке -
IBDataSet1.Params[0].LoadFromStream(b1str);
дает ошибку - "XSQLDA index out of range" .
Спасибо всем .
← →
Johnmen © (2004-05-07 10:13) [10]http://ixbt.wallst.ru/ib/i00001.html
и на ibase.ru есть много материала
Страницы: 1 вся ветка
Текущий архив: 2004.05.30;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.041 c