Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.04.22;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
14-70014
Иван Шихалев
2002-03-17 14:09
2002.04.22
to Merlin


7-70037
Traitor
2002-01-27 12:56
2002.04.22
Где Windows XP хранит пароли ? *.pwl там отсутствует.


1-69853
SkySat
2002-04-08 14:53
2002.04.22
ALt+Ctrl+Del


1-69784
$hiC0
2002-04-10 11:25
2002.04.22
Print и PrintDialog


1-69802
kserg@ukr.net
2002-04-10 14:42
2002.04.22
Как





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский