Главная страница
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.48 MB
Время: 0.018 c
7-73431
Sasha9
2002-02-23 14:28
2002.05.23
Как сделать чтобы приложение не закрылось и при этом не зависло, когда в win98 меняешь полбзователя(log off)


1-73206
PShadow
2002-05-14 15:51
2002.05.23
Не могу запустить Excel


1-73122
boss200000
2002-05-13 13:17
2002.05.23
ProgressBar медленно наращивать


1-73253
Novice 2
2002-05-09 17:28
2002.05.23
SpeedButton и всплывающее меню


1-73188
rank
2002-05-13 05:29
2002.05.23
Как реализовать сортировку по алфавиту в Stringgride e