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

Вниз

Помогите разобрться с запихиванием jpg в базу???   Найти похожие ветки 

 
DBDev   (2003-08-27 10:05) [0]

Надо подгрузить файл JPG и запихать его в поле базы типа image. Использую TDBImage и ТOpenPictureDialog.


//-------------------------------------------------------------------- -------
if (!OpenPictureDialog->Execute()) return;

int f = open((OpenPictureDialog->FileName).c_str(), O_CREAT);
int bytes = filelength(f);
close(f);

if (bytes < 250000) {
if (UIDM->BoardsQuery->State != dsEdit && UIDM->BoardsQuery->State != dsInsert) UIDM->BoardsQuery->Edit();
DBImageA->Picture->LoadFromFile(OpenPictureDialog->FileName);
Clipboard()->Assign(DBImageA->Picture);
DBImageA->Picture->Assign(Clipboard());
}
else Application->MessageBox("Превышен максимально допустимый размер файла (250 КБ)","Ошибка!",MB_OK|MB_ICONERROR);
void __fastcall TBoardForm::FormShow(TObject *Sender)
{
DBImageA->Picture->UnregisterGraphicClass(__classid(TJPEGImage), __classid(TJPEGImage));
DBImageA->Picture->RegisterFileFormat(__classid(TJPEGImage), "jpg", "jpg", __classid(TJPEGImage));
}
//-------------------------------------------------------------------- -------



Не пойму в чем дело, в базе оказываются данные формата BMP вместо JPG, хотя подсовываемый файл точно в JPG.


 
DBDev   (2003-08-27 10:34) [1]

???


 
DBDev   (2003-08-27 10:51) [2]

Собственно без

Clipboard()->Assign(DBImageA->Picture);
DBImageA->Picture->Assign(Clipboard());

Данные почему-то вобще не записываются...


 
zorik   (2003-08-27 11:06) [3]

Используй TStream. А еще посмотри старые вопросы в этом же разделе, там минимум 3 таких вопроса есть с ответами. Сначала нужно искать внимательно, а потом спрашивать.


 
DBDev   (2003-08-27 11:22) [4]

Use TBlobStream to access or modify the value of a BLOB field in a BDE-enabled dataset. А если у меня АДО???


 
Delirium   (2003-08-27 11:31) [5]

TBlobField тебе поможет


 
DBDev   (2003-08-27 12:01) [6]

Дык именно его я и использую. В моем случае DBImageA и есть TBlobField.


 
DBDev   (2003-08-27 12:50) [7]

Совсем запутался :(((! из отпуска только.
Может у кого есть работающий пример кода записи JPG в базу?


 
Nikky   (2003-08-27 18:54) [8]

TBlobField(SomePictureField).LoadFromFile(PictureFileName);


 
Петрович   (2003-08-28 11:50) [9]

Привет, а зачем тебе запихивать jpg в базу
не проше бы в базе держать информацию о jpg а сами файлы просто в каталоге???


 
Arm79   (2003-08-28 15:09) [10]

Лучше всего в "базе держать информацию о jpg а сами файлы просто в каталоге".
А если необходимо именно jpg, то необходимо создать объект TJpegImage, загрузить в него картинку с помощью Assign, а затем записать через метод SaveToStream в поток TADOBLOBStream, предварительно соединенный с BLOB-полем. Считывать тоже необходимо в TJpegImage



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

Форум: "Базы";
Текущий архив: 2003.09.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.008 c
4-58982
Lilo
2003-07-17 15:07
2003.09.18
GlobalDOSAlloc


14-58837
MW Programs
2003-08-30 14:15
2003.09.18
Перевод EXE в COM


4-58978
Serhio
2003-07-18 16:14
2003.09.18
Консольные проги


1-58717
McSimm2
2003-09-08 08:58
2003.09.18
TreeViewCreateNodeClass не могу объявить


1-58671
pirat
2003-09-03 23:59
2003.09.18
халява с Synchronize





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