Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
MySQL\VC++\Снова трабл с картинками (Disturbed) 04/09/2003 - 07:40:50
      Re: Re: MySQL\VC++\Снова трабл с картинками (Disturbed) 04/09/2003 - 10:00:34

> Original message text:
> From: Disturbed - 04/09/2003 - 07:40:50
> Subject:MySQL\VC++\Снова трабл с картинками
> -----------------
> Greetings.
>
> Нужно научиться хранить в базе картинки, и, соответственно, получать их оттуда. Пока ни черта не получается. Читаю из jpeg'а 15K данных, и забрасываю их в BLOB поле. Когда возвращаю их из таблицы и пишу в новый файл, он ни фига не работает. Привожу исходник:
>
> void main() // Алгоритм для отправления картинки в базу
> {
> int fileHandle;
> unsigned int bytesRead;
>
> rdFileHandle = _open("photo.jpg", _O_BINARY);
>
> long fLength = filelength(fileHandle); // Длина в байтах
> unsigned char *dataBuffer = new unsigned char [fLength];
>
> _read(fileHandle, dataBuffer, fLength);
>
> CDatabase MyBase;
> MyBase.OpenEx(_T("DSN=MyDSN"));
>
> HSTMT hstmtInsert;
>
> SQLAllocHandle(SQL_HANDLE_STMT, MyBase.m_hdbc, &hstmtInsert);
>
> SQLBindParameter(hstmtInsert, 1, SQL_PARAM_INPUT, SQL_C_BINARY, SQL_VARBINARY, 0, 0, dataBuffer, sizeof(dataBuffer), NULL);
>
> SQLExecDirect(hstmtInsert, (SQLCHAR*) "INSERT INTO PicTab (BlobFld) VALUES (?)", SQL_NTS);
>
> SQLFreeHandle(SQL_HANDLE_STMT, hstmtInsert);
>
> if (MyBase.IsOpen())
> MyBase.Close();
>
> _close(fileHandle);
> delete dataBuffer;
> }
>


From: Disturbed - 04/09/2003 - 10:00:34
Subject:Re: MySQL\VC++\Снова трабл с картинками
-----------------
Дошло. Я забыл добить слэшы. Подскажите тогда, есть ли в ODBC готовая функция чтобы это сделать? Или свою делать надо...


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
10492



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |