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




MySQL.RU - Webboard



Вернуться
Хранение и чтение файлов на клиентском компью (Faith No More!) 29/10/2008 - 16:37:19
      Re: Хранение и чтение файлов на клиентском компью (bac) 29/10/2008 - 21:04:16
      Re: Хранение и чтение файлов на клиентском компью (Юрий) 13/08/2009 - 15:10:46
      Re: Хранение и чтение файлов на клиентском компью (ara) 01/10/2009 - 22:50:40

> Original message text:
> From: Faith No More! - 29/10/2008 - 16:37:19
> Subject:Хранение и чтение файлов на клиентском компью
> -----------------
> Граждане!
> Подскажите, плиз, как решить следующую задачу:
> 1. запихнуть файл, расположенный на клиентском компьютере в таблицу на сервере MySQL;
> 2. получить этот файл на другом клиентском компьютере, сделав запрос к этой же таблице MySQL.
>
> Разбирательства с типом BLOB, заклинаниями LOAD_FILE и SELECT INTO DUMPFILE привели к возможности класть и доставать файл только на сервере MySQL. А хотелось бы иметь возможность делать это с клиента. Изучение утилит mysql и mysqldump также не дало результатов.
>
> Посоветуйте, плиз, в каком направлении искать.
>
> Спасибо.
>


From: bac - 29/10/2008 - 21:04:16
Subject:Хранение и чтение файлов на клиентском компью
-----------------
Вот ниже пример для записи в BLOB блока шестнадцатиричных данных.
Из прибора считываются результаты измерений 400 штук
Измеряется напряжение, ток и т.п.
Кусок на С++. По аналогии можно считатьфайл преобразовать его в строку X'...............' и записать, а потом прочитать.
Внимание это не стандарт. Поэтому не знаю как насчет поддержки через ODBC и максимального размеро. Но наверно в документации есть.

QSqlQuery query;
QString SQL;
QString s;
float Ua, Ub, Uc, Ia, Ib, Ic, Ucoil, Icoil;

SQL = "UPDATE queue SET dtEnd=NOW(),";
SQL += QString("buf=X'");
s = "";
for (int i=0; i < MEASURING_POINT*Q_PERIOD; ++i ) {
s += toHex((BYTE *)&Ua, sizeof(float)).left(sizeof(float)*2);
s += toHex((BYTE *)&Ub, sizeof(float)).left(sizeof(float)*2);
s += toHex((BYTE *)&Uc, sizeof(float)).left(sizeof(float)*2);
s += toHex((BYTE *)&Ia, sizeof(float)).left(sizeof(float)*2);
s += toHex((BYTE *)&Ib, sizeof(float)).left(sizeof(float)*2);
s += toHex((BYTE *)&Ic, sizeof(float)).left(sizeof(float)*2);
s += toHex((BYTE *)&Ucoil, sizeof(float)).left(sizeof(float)*2);
s += toHex((BYTE *)&Icoil, sizeof(float)).left(sizeof(float)*2);
}

SQL += s + QString("'");

queryExec(SQL, query);



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

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

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



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