Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как закачать изображение в БД? 
:(
    Опции темы
Sagaz
Дата 14.10.2004, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 28.9.2004

Репутация: нет
Всего: нет



Доброе время!!! Я не сильный программер и для кого-то вопрос может показаться детским, но я столкнулся с некоторой проблемой. stena.gif Не могу закачать картинки в БД. Создаю таблицу с соответствующим графическим полем, а как их заполнить. В хелпе много писанины по поводу TBlobField, но нет ни одного примера, в нете тоже ничего подходящего для Builder'a (только по Delphi). Распишите плиз как и че, желательно с примером sample.gif (в классах, наследованиях и прочем я не силен sad.gif ). Builder у меня пятый. Заранее благодарю...
PM MAIL   Вверх
Royan
Дата 14.10.2004, 17:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Dreamer
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 14.9.2002
Где: Лондон

Репутация: нет
Всего: 15



Что за базу данных ты используешь?


--------------------
Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь
PM MAIL MSN   Вверх
Vyacheslav
Дата 14.10.2004, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2124
Регистрация: 25.3.2002
Где: Москва

Репутация: 9
Всего: 59



Да в хелпе полно примеров. Этого разве недостаточно
Код

f ((ClientDataSet1->State != dsInsert) &&
   (ClientDataSet1->State != dsEdit))
 ClientDataSet1->Insert();

TMemoryStream *pMS = new TMemoryStream;
try
{
 Image1->Picture->Bitmap->SaveToStream(pMS);
 ClientDataSet1Images->LoadFromStream(pMS);
}
__finally
{
 delete pMS;
}
ClientDataSet1->Post();



--------------------
С уважением, Вячеслав Ермолаев
PM MAIL WWW ICQ   Вверх
Sagaz
Дата 14.10.2004, 17:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 28.9.2004

Репутация: нет
Всего: нет



Я использую MSSQL 2000. Хочу закачать из файла с помощью LoadFromFile. У меня в хелпе такого нет. sad.gif
PM MAIL   Вверх
Sagaz
Дата 15.10.2004, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 28.9.2004

Репутация: нет
Всего: нет



Вот то что мне нужно сделать (это работает):

Код

Table1->Close();
TBlobField *MyField;
MyField = new TBlobField(NULL);

MyField->FieldName = "picture";
MyField->Name = Table1->Name + MyField->FieldName;
MyField->Index = Table1->FieldCount;
MyField->DataSet = Table1;
Table1->Open();
Table1->Edit();
MyField->LoadFromFile("D:\\data\\DBChart2.bmp");
Table1->Post();


Но кто знает как результат сохранить в базе, если Post() не работает и выводит сообщение при выполнении 'Invalid Blob length'.
PM MAIL   Вверх
Sagaz
Дата 18.10.2004, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 28.9.2004

Репутация: нет
Всего: нет



Наконец то заработало

Код

Table1->Open();
TBlobField *MyField;
MyField = (TBlobField*)Table1->FieldByName("picture");
Table1->Edit();
MyField->LoadFromFile("D:\\data\\pic.bmp");
Table1->Post();


но файлы загружаются только маленькие. скажем при 50Kb уже выдает ошибку Invalid BLOB length. Может кто знает почему...
PM MAIL   Вверх
Гость_DENNN
Дата 18.10.2004, 12:42 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Наверное потому что в БД размер поля задан маленьким? :)
  Вверх
Sagaz
Дата 18.10.2004, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 28.9.2004

Репутация: нет
Всего: нет



Не фига!!! Он тама не меняется вообще! а в хелпе написано что хранить мона портреты до 2-х с лишним гигов!!!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0964 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.