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

Вниз

JPG в базу данных   Найти похожие ветки 

 
Zak ©   (2002-03-26 08:52) [0]

ВотЪ. какие макаром поместить в базу рисунок формата jpg.
Может какойнидь компонент есть для этого...
или может надо просто в поле записать содержимое jpg, а потом при выводе (вывод например делается через WEBnavigator) создать jpg переписать содержимое из базы... Только это всё теория... как на практике это сделать я сам не знаю, Подскажите :)

П.С. Может в Дельфи6 есть такая возможность?!


 
vopros ©   (2002-03-26 09:04) [1]

Я использовал компненту ImageEn. Вообще-то их куча существует. Попробуй ее, правда не помню откуда скачивал, но думаю найти несложно.


 
xxc   (2002-03-26 09:25) [2]

Я это делал так:


procedure InsertJpegToDatabase;
var
J:TJpeg;
S:TMemoryStream;
begin
J:=TJpeg.Create;
J.LoadFromFile(JPEGFileName);
S:=TMemoryStream.Create;
J.SaveToStream(S);
S.Position:=0;
Query.SQL.Text:="insert into PICTURES (ID,PIC) values (:ID,:PIC)"; Query.Prepare;
Query.ParamByName("ID").AsInteger:=ID;
Query.LoadFromStream(S);
Query.ExecQuery;
S.Free;
J.Free;
end;


 
xxc   (2002-03-26 09:31) [3]

сорри за опечатку - вместо
"Query.LoadFromStream(S);" надо "Query.ParamByName("PIC").LoadFromStream(S);"



 
Johnmen ©   (2002-03-26 09:51) [4]

>xxc : а зачем Query.Prepare; ?


 
Zak ©   (2002-03-26 10:43) [5]

Так я то вставил, но почемуто при выводе файл получается нулевой длины... портак:

J:=TJpegImage.Create;
S:=TMemoryStream.Create;
TBLOBField(Query1.FieldByName("Im")).SaveToStream(S);
шf s.Size>0 then begin
J.LoadfromStream(S);
J.SaveToFile("d:\progi\kc\portret.jpg");
Memo1.Lines.Add("<img src="+""""+"d:\progi\kc\portret.jpg"+""""+">");
end;
J.Free;
S.Free;

хде тут ошибка?


 
Lfx   (2002-03-26 16:32) [6]

Есть такой класс: TBLOBStream называется. И не надо никаких потенциально (да и реально) глюкавых TMemoryStream использовать. Смотри хелп - пропишешь ему при создании с каким полем работать и дело с концом. НО!!! Его надо создавать перед каждым обращением к данным. Т.е. курсор установил, создал TBLOBStream, выкачал данные, щлепнул TBLOBStream. И т.д.


 
ALFA   (2002-03-26 17:26) [7]

Должно быть поле (OLE)
............
Table1grafshetgej: TGraphicField;
..................

записать
Table1grafshetgej.LoadFrоmFile("Твой файл.JPG");
Table1.Post;

изъять
Table1grafshetgej.SaveToFile("Твой файл.JPG");



 
Zak ©   (2002-04-01 09:05) [8]

А разве в Базу в поле График можно вписать jpgшный файл?



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

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

Наверх




Память: 0.48 MB
Время: 0.01 c
14-69998
Alx2
2002-03-15 07:57
2002.04.22
Merlin, с Днем Рождения!


1-69886
NLO
2002-04-09 12:23
2002.04.22
Вычисляемые поля


1-69923
Vlad_Leon
2002-04-09 08:41
2002.04.22
Как сменить раскладку клавиатуры?


14-70020
ASM
2002-03-16 01:01
2002.04.22
Профессианальная Помощь нужна!


1-69915
inko
2002-04-09 17:55
2002.04.22
Backup файла.