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

Вниз

Картинка в BLOB-e   Найти похожие ветки 

 
Id   (2006-09-18 15:55) [0]

Здраствуйте еще раз.
Не могу сохранить картинку в базу(Fb 1.5),
procedure TFRg.Button1Click(Sender: TObject);

begin
 DataModule1.TrUpdate.StartTransaction;
  try
    with DataModule1.IBUpdate do begin
      close;
      SQL.Clear;
      SQL.add("update rentgen set OPIS=:OPIS,PIC=:PIC,nazn=:nazn where id="+edit1.Text);
      Prepare;
      ParamByName("OPIS").AsBlob:=RichEdit1.Lines.Text;
      ParamByName("PIC").Assign(Image1.Picture.Bitmap);

      ParamByName("nazn").AsInteger:=0;
      ExecSQL;
    end;
  except
   DataModule1.TrUpdate.Rollback;
  end;
  try
   DataModule1.TrUpdate.Commit;
  except
   DataModule1.TrUpdate.Rollback;
  end;
close;
end;

Подскажите синтаксис выделенной строчки?


 
Id   (2006-09-18 16:02) [1]

Выскакивает ошибка "Unsupported feature"


 
Desdechado ©   (2006-09-18 16:05) [2]

SaveToStream
то же самое, что и при чтении, только наоборот

не дубли, забанят!
http://delphimaster.net/view/2-1158580517/


 
Id   (2006-09-18 16:33) [3]

Вот это нашел на Ibase.ru
IBDataSet1.Edit;
B:=IBDataSet1.CreateBlobStream(IBDataSet1.FieldByName("BLB") as TBlobField, bmWrite);
B.LoadFromFile("c:\blob.bin");
B.Free;
IBDataSet1.Post;

Преобразую

procedure TFRg.Button1Click(Sender: TObject);
var
b:TIBBlobStream;
begin
DataModule1.TrUpdate.StartTransaction;
 try
   with DataModule1.IBUpdate do begin
     close;
     SQL.Clear;
     SQL.add("update rentgen set OPIS=:OPIS,PIC=:PIC,nazn=:nazn where id="+edit1.Text);
     Prepare;
     ParamByName("OPIS").AsBlob:=RichEdit1.Lines.Text;
     B:=CreateBlobStream(ParamByName("OPIS") as TBlobField, bmWrite);
     b.SaveToStream(ParamByName("PIC"));
     b.free;

     ParamByName("nazn").AsInteger:=0;
     ExecSQL;
   end;
 except
  DataModule1.TrUpdate.Rollback;
 end;
 try
  DataModule1.TrUpdate.Commit;
 except
  DataModule1.TrUpdate.Rollback;
 end;
close;
end;

Не компилируется-
"[Error] Rentgen.pas(123): Undeclared identifier: "TBlobField"
[Error] Rentgen.pas(123): Undeclared identifier: "bmWrite"
[Error] Rentgen.pas(129): Incompatible types: "TPersistent" and "TIBBlobStream""
Подскажите как правильно?


 
Id   (2006-09-19 15:14) [4]

Задам вопрос по другому.
Можно ли каким-то образом сохранить картинку в потоке BLOB  через параметры, так как это делается с текстом?

> ParamByName("OPIS").AsBlob:=RichEdit1.Lines.Text;


 
Johnmen ©   (2006-09-19 15:48) [5]

IBDataSet1.Edit;
B:=IBDataSet1.CreateBlobStream(IBDataSet1.FieldByName("BLB") as TBlobField, bmWrite);
Image1.Picture.Bitmap.SaveToStream(B);
IBDataSet1.Post;
B.Free;


 
Johnmen ©   (2006-09-19 15:51) [6]

Вместо FieldByName ес-но ParamByName.



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

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

Наверх




Память: 0.46 MB
Время: 0.047 c
2-1158414145
olevacho_
2006-09-16 17:42
2006.10.08
последовательность вывода band-ов


2-1158089245
Виктор_
2006-09-12 23:27
2006.10.08
код клавиши BackSpace


2-1158670027
KyRo
2006-09-19 16:47
2006.10.08
Как проверить что файл уже скопировался


3-1154889900
Ilg
2006-08-06 22:45
2006.10.08
Ошибка при удалении


2-1158934636
ГореПрограммер
2006-09-22 18:17
2006.10.08
Перевод секунд





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский