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

Вниз

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

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

Наверх




Память: 0.45 MB
Время: 0.007 c
4-73459
lipskiy
2002-03-24 00:42
2002.05.23
Как получить сообщение копирования в буфер любого приложени? Пример из FAQ не работает.


1-73112
jenbbond
2002-05-13 11:04
2002.05.23
Помогите с ошибкой


3-73007
vopros
2002-04-25 16:47
2002.05.23
Запрос. Помогите.


1-73106
Carpenter
2002-05-07 19:54
2002.05.23
динамические массивы как параметры функции в DLL


7-73409
perov
2002-02-24 11:28
2002.05.23
русификация Командной строки в вин2000





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