Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.05;
Скачать: CL | DM;

Вниз

Картинки в БД   Найти похожие ветки 

 
onix   (2004-11-03 09:57) [0]

Здравстуйте мастера !
Никогда не приходилось сохранять картинки в БД. Помогите пожалуйста  советом, как сей фокус проделать с помощью TStoredProc.

Заранее спасибо.


 
vv_fran   (2004-11-03 12:52) [1]

Blob поле делаешь. Подробней в Help


 
onix   (2004-11-03 14:06) [2]

>vv_Fran
Blob поле в таблице есть. Процедура которая должна добавить картинку тоже вроде есть. Проблемма, как передать картинку из программы в хранимую процедуру.
Таблица состоит из 2 полей:
 IMAGE BLOB SUB_TYPE 0 SEGMENT SIZE 800,
 ID INTEGER

Процедура имеет вид:
CREATE PROCEDURE UPDATE_PIC (
 ID INTEGER,
 IMAGE BLOB SUB_TYPE 0 SEGMENT SIZE 80
)  AS  
begin
update pic
set image = :image
where id = :id;
end

А вот какой код на писать в программе, чтоб передать в процедуру? Пробовал так :

procedure TFMain.Image2DblClick(Sender: TObject);
var pic : TBitmap;
begin
try
if OpenPicture.Execute then begin
  pic := TBitmap.Create;
  pic.LoadFromFile(OpenPicture.FileName);
  with DM.SPTemp do begin
   Active:=false;
   StoredProcName:="update_pic";
   Params.Clear;
   Params.CreateParam(ftGraphic,"Image",ptInput).SetData(@pic);
   Params.CreateParam(ftInteger,"id",ptInput).AsInteger := TImage(Sender).Tag;
   ExecProc;
   TransCommit;
  end;
  TImage(Sender).Picture.LoadFromFile(OpenPicture.FileName);}
end;
except
 ShowMessage("Не удачное завершение записи");
end;
pic.Free;
end;
И еще несколько вариантов, но эффект =0



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

Текущий архив: 2004.12.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.043 c
1-1100579553
ККВ
2004-11-16 07:32
2004.12.05
Количество фом проекта


1-1101014258
Артем К.
2004-11-21 08:17
2004.12.05
Есть ли компоненты для работы с электронной почтой?


14-1100719397
Piter
2004-11-17 22:23
2004.12.05
Россия выиграла. Ура!


14-1100200907
Викусик
2004-11-11 22:21
2004.12.05
Глупый вопрос.


1-1101300335
Zhekson
2004-11-24 15:45
2004.12.05
Как при отлове ошибки в try...except выскочить в определённое м.