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

Вниз

Народ, подскажите как запихнуть в базу картинку программно...   Найти похожие ветки 

 
Rub ©   (2002-04-27 10:39) [0]

Код:

ADOQuery->Append();
ADOQuery->FieldByName("Title")->AsString = "_Test";
ADOQuery->FieldByName("Image")->AsString = Image1->Picture;
ADOQuery->Post();

База MSSQL поле типа Image


 
SB.John ©   (2002-04-27 11:14) [1]

Использовать потоки (долго объяснять - лениво). Если хочешь проще - используй TDBImage. Привяжи его к нужному полю и вперед

ADOQuery->Append();
DBImage1->LoadFromFile("C:\\1.bmp");
или
DBImage1->PasteFromClipboard(...);
ADOQuery->Post();

Если не хочешь чтобы картинка была видна, просто DBImage1->Visible = false;


 
Rub ©   (2002-04-27 11:40) [2]

У ТDBImage нет метода LoadFromFile....
А как запихнуть предварительно картинку в буфер обмена если действовать через него?


 
Lusha ©   (2002-04-27 11:42) [3]

Смотрите TBlobField и TBlobStream...


 
SB.John ©   (2002-04-27 12:36) [4]

Прошу прощения. Вместо DBImage1->LoadFromFile надо использовать DBImage1->Picture->LoadFromFile. Вот дострочный код из моей проги:

PicTable->Edit();
DBImage1->Picture->LoadFromFile(FileName);
DeleteFile(FileName);
PicTable->FieldByName(mfield)->AsInteger = mvalue;
PicTable->Post();





 
McSimm ©   (2002-04-28 10:54) [5]

Лучше всего с помощью ADOBlobStream. Например:
var
ADOStream: TADOBlobStream;
FileStream: TFileStream;
begin
ADOQuery.Append;
ADOQuery.FieldByName("Title").AsString = "_Test";
ADOStream := TADOBlobStream.Create(ADOQuery.FieldByName("Image"), bmWrite);
try
FileStream := TFileStream.Create(FileName, fmOpenRead);
try
ADOStream.LoadFromStream(FileStream)
finally
FileStream.Free
end
finally
if ADOQuery.State in [dsInsert, dsEdit] then ADOQuery.Post;
ADOStream.Free
end;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.01 c
1-73097
Mihan
2002-05-12 15:58
2002.05.23
проблемы с Paramstr(1)


1-73296
Vcoder
2002-05-11 19:25
2002.05.23
Как отловить команду выключения компьютера?


1-73184
Serg2002
2002-05-14 05:01
2002.05.23
попытка №2


14-73404
Alexandr
2002-04-16 13:00
2002.05.23
бойцовский клуб


1-73198
Gari
2002-05-14 14:43
2002.05.23
Прошу помощи !!!!!