Страница 1 из 1
db.mysql.c++
Добавлено: 2009-03-12 23:19:12
gurt
Код: Выделить всё
#include "/usr/local/include/mysql/mysql.h"
#include <stdio.h>
#include <iostream>
void die(void){
//printf("%sn", mysql_error(&mysql));
exit(0);
}
int main(void)
{
MYSQL mysql;
MYSQL_RES *res;
MYSQL_ROW row;
printf("dll loaded");
int i;
if (!mysql_init(&mysql)){
abort ();
}
if (!(mysql_real_connect(&mysql,"localhost","***","***", "**", 3306 , NULL , 0))){
die();
}
if (mysql_select_db(&mysql,"ftp")){
die();
}
if (mysql_query(&mysql,"SELECT * FROM users_table")){
die();
}
if (!(res = mysql_store_result(&mysql))){
die();
}
while((row = mysql_fetch_row(res))) {
for (i = 0 ; i < mysql_num_fields(res); i++)
{
printf("%st",row[i]);
printf ("n");
}
}
if (!mysql_eof(res)){
die ();
}
mysql_free_result(res);
mysql_close(&mysql);
}
Код: Выделить всё
result of # c++ testsql.cpp
/var/tmp//cc7OdQQT.o(.text+0x1eb): In function `main':
: undefined reference to `mysql_init'
/var/tmp//cc7OdQQT.o(.text+0x23f): In function `main':
: undefined reference to `mysql_real_connect'
/var/tmp//cc7OdQQT.o(.text+0x263): In function `main':
: undefined reference to `mysql_select_db'
/var/tmp//cc7OdQQT.o(.text+0x287): In function `main':
: undefined reference to `mysql_query'
/var/tmp//cc7OdQQT.o(.text+0x2a3): In function `main':
: undefined reference to `mysql_store_result'
/var/tmp//cc7OdQQT.o(.text+0x2fa): In function `main':
: undefined reference to `mysql_num_fields'
/var/tmp//cc7OdQQT.o(.text+0x30e): In function `main':
: undefined reference to `mysql_fetch_row'
/var/tmp//cc7OdQQT.o(.text+0x327): In function `main':
: undefined reference to `mysql_eof'
/var/tmp//cc7OdQQT.o(.text+0x340): In function `main':
: undefined reference to `mysql_free_result'
/var/tmp//cc7OdQQT.o(.text+0x34e): In function `main':
: undefined reference to `mysql_close'
:st:
Re: db.mysql.c++
Добавлено: 2009-03-12 23:22:50
paradox
вообще то это не форум немых
сдесь принято что то говорить хотя бы))))
но попробую протелепатировать
что вы не правильно компиляете
потому что не подключили libmysql
ну ничего
хауту будет достаточно почитать
или посмотреть как уже сделано у других
Re: db.mysql.c++
Добавлено: 2009-03-13 18:06:28
gurt
благодарю за телепатию.
как я вижу эту проблему - мне нужно подгрузить libmysql.dll , но как это сделать я не представляю. до этого я писал проекты в вижуалке и подгрузка библиотек происходила через окна. или я подгружал длл через loadlibrary, но результат я записывал в hinstance, которого нет в моем случае.
как вы уже догадались, а я в этом не сомневаюсь, приложение будет крутиться на сервере под freebsd. данный код я написал на нём же и скомпилировал командой с++. буду безумно признателен, если вы подскажете какой компилятор осуществляет шаманство с моим кодом. скорее всего ответ не однозначный, поэтому прошу подсказать, как это выяснить. возможно есть советы по тому, как удобнее будет работать с серверной частью ( написание проекта, отладка, тестирование).
Re: db.mysql.c++
Добавлено: 2009-03-13 18:13:58
paradox
а что под бсд уже можно dll компилять?
круто
вы уж определитесь и четко сформулируйте мысль
а то я вас не понимаю
Re: db.mysql.c++
Добавлено: 2009-03-13 18:17:48
gurt
если бы я чётко знал, что мне нужно. наверное я забыл попросить меня поправить, если я что-то написал неверно.
на данном этапе мне нужно получить доступ к базам на MySql сервере. для этого мне нужны соотв функции. в данном посте я указал код, который, как мне кажется, должен в этом помочь = ). результат компиляции файла я написал. по моим догадкам дело в том, что компилятор ни сном, ни духом, про эти функции. как мне о них сказать? возможно что-то не то использую?
Re: db.mysql.c++
Добавлено: 2009-03-13 18:36:16
paradox
я вообще удивляюсь как вы что то программируете если незнаете даже о подключении библиотек
я вам так и сказал
и одного c++ файл.cpp
недостаточно
меик файл что ли сделайте
и подключите библиотеки mysql
к примеру
-lmysqlclient -L/usr/local/lib/mysql
итд
в зависимости от версии mysql
и того где он лежит
вообщем я то вас в шоке
Re: db.mysql.c++
Добавлено: 2009-08-18 11:01:32
ADRE
paradox писал(а):я вообще удивляюсь как вы что то программируете если незнаете даже о подключении библиотек
я вам так и сказал
и одного c++ файл.cpp
недостаточно
меик файл что ли сделайте
и подключите библиотеки mysql
к примеру
-lmysqlclient -L/usr/local/lib/mysql
итд
в зависимости от версии mysql
и того где он лежит
вообщем я то вас в шоке
цитата из документации к mysql, рекомендуют просто через ldconfig ссылку на бибку сделать, либо скопировать в рабочию бибку типа /lib
Re: db.mysql.c++
Добавлено: 2009-08-18 14:00:13
Fastman
paradox писал(а):
я вообще удивляюсь как вы что то программируете если незнаете даже о подключении библиотек
...
вообщем я то вас в шоке
Аналогично. Причем это тенденция....
Честно ведь готовы помочь и рассказать...
Но на такие вопросы иногда даже лень в гугел посылать.
Re: db.mysql.c++
Добавлено: 2009-08-18 14:01:53
Fastman
... либо скопировать в рабочию либку типа /lib
Плохой совет. Если немного разобраться, то можно понять на какие грабли можно наступить.
Re: db.mysql.c++
Добавлено: 2009-08-19 3:58:15
ADRE
Fastman писал(а):... либо скопировать в рабочию либку типа /lib
Плохой совет. Если немного разобраться, то можно понять на какие грабли можно наступить.
ну в документации так написано было )) либо через путь -L либо библиотеку звернуть, а про грабли это да +) наступил, как обычно нос расквасилосо
---------------------------------------------------
2Fastman а где нарыть пример программки которая висит и ждет вхождения данных =/ че-то везде бред какой-то =( (просто С)
Re: db.mysql.c++
Добавлено: 2009-08-19 11:00:57
Fastman
ADRE писал(а):Fastman писал(а):... либо скопировать в рабочию либку типа /lib
2Fastman а где нарыть пример программки которая висит и ждет вхождения данных =/ че-то везде бред какой-то =( (просто С)
Опиши задачу. Висеть и ждать - конечно очень точный пример ТЗ, но мне пока непонятно.
Попробую угадать конечно, тебе нужен TCP/IP сервер который будет листить определенный порт ожидая входящего соединения,
по приходу данных нужно в отдельном потоке принять и обработать эти данные.
Так ?
Re: db.mysql.c++
Добавлено: 2009-08-19 11:13:27
ADRE
Fastman писал(а):ADRE писал(а):Fastman писал(а):... либо скопировать в рабочию либку типа /lib
2Fastman а где нарыть пример программки которая висит и ждет вхождения данных =/ че-то везде бред какой-то =( (просто С)
Опиши задачу. Висеть и ждать - конечно очень точный пример ТЗ, но мне пока непонятно.
Попробую угадать конечно, тебе нужен TCP/IP сервер который будет листить определенный порт ожидая входящего соединения,
по приходу данных нужно в отдельном потоке принять и обработать эти данные.
Так ?
ну ты реально телепат

есть?
Re: db.mysql.c++
Добавлено: 2009-08-19 12:08:29
Fastman
ADRE писал(а):ну ты реально телепат

есть?
Ну ты же понимаешь что сделать можно все

Примеров и литературы навалом. По ходу реализации подскажем тебе что к чему.
Но первый вопрос который я здаю - "ЗАЧЕМ ?"
Опиши что ты хочешь сделать, для чего ЭТО будет и почему выбрал именно C.
Re: db.mysql.c++
Добавлено: 2009-08-20 5:56:26
ADRE
Fastman писал(а):ADRE писал(а):ну ты реально телепат

есть?
Ну ты же понимаешь что сделать можно все

Примеров и литературы навалом. По ходу реализации подскажем тебе что к чему.
Но первый вопрос который я здаю - "ЗАЧЕМ ?"
Опиши что ты хочешь сделать, для чего ЭТО будет и почему выбрал именно C.
надо будет собирать логи трафика, синхронизировать софт который будет стоять у клиентов т.к. у всех дслщиков (местных) входищие соединения запрещены и на виндовозе проблематично будет скриптами csh работать, поэтому в какое-то время появления клиента он коннектится и у него собиратется нужная инфа и делаются нужные настройки, дампы и возможно что-то еще....
Re: db.mysql.c++
Добавлено: 2009-08-20 14:06:50
Fastman
ADRE писал(а):Fastman писал(а):ADRE писал(а):ну ты реально телепат

есть?
Ну ты же понимаешь что сделать можно все

Примеров и литературы навалом. По ходу реализации подскажем тебе что к чему.
Но первый вопрос который я здаю - "ЗАЧЕМ ?"
Опиши что ты хочешь сделать, для чего ЭТО будет и почему выбрал именно C.
надо будет собирать логи трафика, синхронизировать софт который будет стоять у клиентов т.к. у всех дслщиков (местных) входищие соединения запрещены и на виндовозе проблематично будет скриптами csh работать, поэтому в какое-то время появления клиента он коннектится и у него собиратется нужная инфа и делаются нужные настройки, дампы и возможно что-то еще....
Каша... вообщем. Эксплицируй стоящую задачу на подзадачи и увидишь что получается бред легкий.
Либо ты плохо объяснил и плохо представляешь что вообще надо.
Потому как собирать логи траффика/синхронизировать/дампить - все в одном флаконе как то мне не нравиться

Протрезвеешь - пиши по факту что же на самом деле задумали )
Re: db.mysql.c++
Добавлено: 2009-08-21 4:52:38
ADRE
Fastman писал(а):ADRE писал(а):Fastman писал(а):ADRE писал(а):ну ты реально телепат

есть?
Ну ты же понимаешь что сделать можно все

Примеров и литературы навалом. По ходу реализации подскажем тебе что к чему.
Но первый вопрос который я здаю - "ЗАЧЕМ ?"
Опиши что ты хочешь сделать, для чего ЭТО будет и почему выбрал именно C.
надо будет собирать логи трафика, синхронизировать софт который будет стоять у клиентов т.к. у всех дслщиков (местных) входищие соединения запрещены и на виндовозе проблематично будет скриптами csh работать, поэтому в какое-то время появления клиента он коннектится и у него собиратется нужная инфа и делаются нужные настройки, дампы и возможно что-то еще....
Каша... вообщем. Эксплицируй стоящую задачу на подзадачи и увидишь что получается бред легкий.
Либо ты плохо объяснил и плохо представляешь что вообще надо.
Потому как собирать логи траффика/синхронизировать/дампить - все в одном флаконе как то мне не нравиться

Протрезвеешь - пиши по факту что же на самом деле задумали )
ок потом отпишусь когда основу виндузятную прикручу

Re: db.mysql.c++
Добавлено: 2009-08-21 9:24:29
Fastman
ADRE писал(а):Fastman писал(а):ADRE писал(а):Fastman писал(а):ADRE писал(а):ну ты реально телепат

есть?
Ну ты же понимаешь что сделать можно все

Примеров и литературы навалом. По ходу реализации подскажем тебе что к чему.
Но первый вопрос который я здаю - "ЗАЧЕМ ?"
Опиши что ты хочешь сделать, для чего ЭТО будет и почему выбрал именно C.
надо будет собирать логи трафика, синхронизировать софт который будет стоять у клиентов т.к. у всех дслщиков (местных) входищие соединения запрещены и на виндовозе проблематично будет скриптами csh работать, поэтому в какое-то время появления клиента он коннектится и у него собиратется нужная инфа и делаются нужные настройки, дампы и возможно что-то еще....
Каша... вообщем. Эксплицируй стоящую задачу на подзадачи и увидишь что получается бред легкий.
Либо ты плохо объяснил и плохо представляешь что вообще надо.
Потому как собирать логи траффика/синхронизировать/дампить - все в одном флаконе как то мне не нравиться

Протрезвеешь - пиши по факту что же на самом деле задумали )
ок потом отпишусь когда основу виндузятную прикручу

Ага..давай

А то мне уже самому интересно
