Главная страница
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.017 c
1-73207
Иван
2002-05-14 01:24
2002.05.23
Копировать Объект


1-73245
Dimaiv
2002-04-26 19:47
2002.05.23
Как в DbGrid сделать так чтобы Hint появлялся только после


4-73457
AlexMey
2002-03-19 15:00
2002.05.23
Копирование файлов по сети.


1-73212
yastal
2002-05-10 19:25
2002.05.23
Подскажите как удалять динамически созданные компоненты


3-72997
Pavel_S
2002-04-20 16:24
2002.05.23
INTERBASE и тормоза