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

как запостить файл в поле BLOB для INTERBASE?   Найти похожие ветки 

← →
Analitik ©   (2005-09-02 18:13) [0]

ДОбрый день!
Есть проблема: как запостить файл в BLOB-поле в СУБД Interbase (прога на Delphi)?
следующий код работает для MS Access, но не принимается INterbase. Компилятор не ругается, просто ничего не происходит.
код:
var
blob: TStream;
fs : TStream;
begin
           IBTable1.Insert;
           blob := IBTable1.CreateBlobStream(IBtable1.FieldByName("TMP_DOC"),bmWrite);
           try
             blob.Seek(0, soFromBeginning);
             fs := TFileStream.Create("D:\mm.doc", fmOpenRead or fmShareDenyWrite);
             try
               blob.CopyFrom(fs, fs.Size)
             finally
               fs.Free
             end;
           finally
             blob.Free;
             IBTable1.Post;
           end;


← →
Desdechado ©   (2005-09-02 18:54) [1]

а транзакцию подтвердить не пробовал?

и что значит "ничего не происходит"? В базу смотрел после выполнения?


← →
Alexandr ©   (2005-09-03 07:29) [2]

сначата post потом free.
О, так у тебя еще и стрим закрывается до поста?
короче где-то на ibase.ru было на этот счет написано


← →
Analitik ©   (2005-09-09 19:56) [3]

Ок, все работает.
Можно было не извращаться с потоками:)
код:
begin
   Database1.Open;
   if Database1.Connected then
     begin
       Table1.Open;
       Transaction1.Active:=true;
       Table1.Insert;
       Table1Field1.LoadFromFile(filename);
       Table1.Post;
       Table1.Close;
       Transaction1.Commit;
     end;
end;

Спасибо за ответы:)


← →
oleg_   (2005-09-28 22:16) [4]

А если через query? то как?


← →
Desdechado ©   (2005-09-28 22:43) [5]

то же самое
Query1.Sql.Text :=
  "INSERT INTO testblob " +
  " ( " +
  "  fBlob" +
  " )" +
  " VALUES" +
  " (" +
  " :ParamBlobField" +
  ")";
Query1.ParamByName("ParamBlobField").DataType := ftBlob;
Query1.ParamByName("ParamBlobField").ParamType := ptInput;
Query1.ParamByName("ParamBlobField").LoadFromFile("MyFile",ftBlob);
Query1.ExecSql;


← →
Oleg_   (2005-09-29 10:34) [6]

->Desdechado ©  

спасибо все стало понятно



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

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



Память: 0.46 MB
Время: -0.974 c
2-1129303334
Mr.Bob
2005-10-14 19:22
2005.11.13
Помогите определиться с типом базы


14-1129821760
BerkeleyMan
2005-10-20 19:22
2005.11.13
Посоветуйте программу (Audio CD -> MP3)


14-1129668273
Prohodil Mimo
2005-10-19 00:44
2005.11.13
Каковы преимущества тестирования с NUnit?


2-1129815297
Vladimir88
2005-10-20 17:34
2005.11.13
ControlAtPos


14-1129899930
oldman
2005-10-21 17:05
2005.11.13
Эстония купила (или взяла на время) у НАТО стелс...




   Наверх