Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Mysql, C++

57K
06 июля 2010 года
Cr3a70r
7 / / 14.06.2010
Всем привет!
 
Код:
void clientsOn()
    {
    strcpy (_query,"select char_name from characters where online>0");

     mysql_real_query(conn,_query,sizeof(_query));
     res = mysql_store_result(conn);
     _rows = int(mysql_num_fields(res));

     }

вот есть функция, переменной типа int _rows не присваеваится никакое значение. кто нибуть может ткнуть в мою ошибку?:)
спасибо!
535
06 июля 2010 года
Нездешний
537 / / 17.01.2008
1. Вы не указали типы используемых переменных. В частности, _query. В зависимости от типа _query могут быть совершенно разные результаты выполнения sizeof(_query) и strcpy
2. Что возвращает mysql_real_query?
3. Не принципиально, но все же - почему не mysql_query?
4. Что возвращает mysql_error?
43K
06 июля 2010 года
loki231
76 / / 27.09.2009
Попробуй заменить sizeof(_query) на strlen(_query).

А вообще, нужно проверять результат выполнения mysql_real_query (). Скорее всего он возвращает ошибку, из-за того, что в буффере _query после Вашего запроса идёт всякий мусор, который обрабатывает mysql_real_qyery. Вызвано это тем, что в качестве длины запроса указано sizeof _query, т.е. размер всего буфера _query, а должна быть указана длина запроса. Кстати,если sizeof от переменной, то скобочки можно опускать.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог