Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.02.2007, 15:20   #1
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию BLOB+Mysql+DbExpress

Все, мозг, что называется съеден...
Объясню:
есть задача через Dbexpress в Mysql базе добавить запись, в которой учавствует BLOB в качестве собственно картинки...
давайте сначала... как это сделать ?
если есть пример, то было бы вообще замечательно...
просто через Dbexpress с этим никогда не сталкивался, и как выяснилось это крайне проблематично
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 26.02.2007, 11:49   #2
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

С этим вобщем я разобрался, все замечательно.
Задача собственно другая теперь...
Выбрать картинку из базы в файл...
делаю так:

Код:
var
f:file;
stream:tstream;
image:timage;
begin
  assignfile(f,'temp.jpg');
  rewrite(f);
  fproc.q1.Active:=false;
  fproc.q1.SQL.Clear;
  fproc.q1.SQL.Add('select sepcimage from Jurup where Idup='+up.id );
  fproc.q1.Active:=true;
stream:=fproc.q1.CreateBlobStream(fproc.q1.FieldByName('sepcimage'),bmread);
  image:=timage.Create(nil);
  image.Picture.Bitmap.LoadFromStream(stream);
  image.Picture.SaveToFile('temp.jpg');
  fproc.q1.Active:=false;
ошибка возникает здесь:
image.Picture.Bitmap.LoadFromStream (stream);
мол неверный bitmap
в поле хранится картинка в формате jpeg , проверил клиентом MySql поле читается корректно
как же быть ?
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 02.03.2007, 17:27   #3
delphin_max
Пользователь
 
Аватар для delphin_max
 
Регистрация: 02.03.2007
Сообщений: 15
По умолчанию

Я как-то писал что-то подобное ..вот

Код:
procedure TForm42.load_pics();
var
blob:TStream;
begin
if not Data1.Table9.Locate('id',sLabel1.Caption,[loCaseInsensitive]) then
begin
Werror(Getstt(1245));
abort;
end;
 if Data1.Table9.FieldValues['photo']<>NULL then
  begin
blob := Data1.Table9.CreateBlobStream(Data1.Table9.FieldByName('photo'), bmRead);
try
blob.Seek(0, soFromBeginning);
with TFileStream.Create(ExtractFilePath(paramstr(0))+'Temp\outphoto.bmp', fmCreate) do
try
CopyFrom(blob, blob.Size)
finally
Free
end;
finally
blob.Free
 end;
Image1.Picture.LoadFromFile(ExtractFilePath(paramstr(0))+'Temp\outphoto.bmp');
  sBitBtn2.Enabled:=true;
 end else Image1.Picture:=nil;
 end;
может поможет
Shark-Media group icq:8485368
delphin_max вне форума Ответить с цитированием
Старый 02.03.2007, 18:01   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Вот что нашел:
Цитата:
Как поместить картинку из базы данных, например MsSQL, в компонент TIMAGE ?
1) Предполагается, что поле blob (например, pict)
2) в запросе query.sql пишется что-то вроде
'select pict from sometable where somefield=somevalue'
3) запрос открывается
4) делается "присваивание":
image1.picture.assing(tblobfield(qu ery.fieldbyname('pict'))
или, если известно, что эта картинка - bitmap, то можно
image1.picture.bitmap.assing(tblobf ield(query.fieldbyname('pict'))

А можно воспользоваться компонентом tdbimage.
mihali4 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перенос приложения использующего комп dbexpress slayer80 БД в Delphi 0 13.06.2008 14:31
MySQL нужна библ. для Visual C++ (MySql++) Alexoid Visual C++ 8 07.05.2008 18:29
dbExpress SERG1980 БД в Delphi 1 03.08.2007 15:37
PostGree+DbExpress Квэнди БД в Delphi 0 16.02.2007 16:29