Как использовать MySQL в C++
|
|
lumennes | Дата: Вторник, 28 Августа 2012, 16:11 | Сообщение # 1 |
Убийца Diablo
Сейчас нет на сайте
| Я пишу сервер на C++ и мне необходимо чтобы он сохранял и доставал данные из базы данных на MySQL. Как это сделать? Если можно подробнее и с примерами. Заранее спасибо.
Как мало вы знаете, как громко вы судите...
|
|
| |
Йакуд | Дата: Вторник, 28 Августа 2012, 16:17 | Сообщение # 2 |
участник
Сейчас нет на сайте
| Code #include <my_global.h> #include <mysql.h>
int main(int argc, char *argv[]) { // Дескриптор соединения MYSQL *conn; // Получаем дескриптор соединения conn = mysql_init(NULL); if(conn == NULL) { // Если дескриптор не получен - выводим сообщение об ошибке fprintf(stderr, "Error: can't create MySQL-descriptor\n"); exit(1); } // Подключаемся к серверу if(!mysql_real_connect(conn, NULL, "root", NULL, NULL, NULL, NULL, 0 )) { // Если нет возможности установить соединение с сервером // базы данных выводим сообщение об ошибке fprintf(stderr, "Error: can't connect to database %s\n", mysql_error(conn)); } else { // Если соединение успешно установлено выводим фразу - "Success!" fprintf(stdout, "Success!\n"); } // Закрываем соединение с сервером базы данных mysql_close(conn); }
PS. Гуглится за 30 секунд
"Хороший художник – копирует, гениальный – ворует!" — Pablo Picasso .blanco 2.0
Сообщение отредактировал Йакуд - Вторник, 28 Августа 2012, 16:18 |
|
| |
lumennes | Дата: Вторник, 28 Августа 2012, 18:54 | Сообщение # 3 |
Убийца Diablo
Сейчас нет на сайте
| При компиляции вылетает ошибка Code 1>CPP.obj : error LNK2001: неразрешенный внешний символ "_mysql_close@4" 1>CPP.obj : error LNK2001: неразрешенный внешний символ "_mysql_error@4" 1>CPP.obj : error LNK2001: неразрешенный внешний символ "_mysql_real_connect@32" 1>CPP.obj : error LNK2001: неразрешенный внешний символ "_mysql_init@4" fatal error LNK1120: 4 неразрешенных внешних элементов
может кроме Code #include <my_global.h> #include <mysql.h> нужно еще что-то подключить?
Добавлено (28.08.2012, 17:39) --------------------------------------------- Ура Всё получилось!!! Просто забыл подключить libmysql.lib.
Добавлено (28.08.2012, 18:54) --------------------------------------------- Не работает. Кто может помгите. Что я делаю не так?
Как мало вы знаете, как громко вы судите...
Сообщение отредактировал lumennes - Вторник, 28 Августа 2012, 21:13 |
|
| |
05142 | Дата: Вторник, 28 Августа 2012, 19:23 | Сообщение # 4 |
постоянный участник
Сейчас нет на сайте
| Пришли весь код
mecinvader
|
|
| |
lumennes | Дата: Вторник, 28 Августа 2012, 19:54 | Сообщение # 5 |
Убийца Diablo
Сейчас нет на сайте
| На скрине он весь. я его сейчас немного переписал.
Сейчас, меня интересует как можно вставить переменную C++ между кавычками, чтобы она воспринималась как переменная, а не слово.
допустим есть переменная
и я выполняю запрос к базе данных Code mysql_query(&mysql, "INSERT INTO users (id, login) VALUES (NULL, me)");
как сделать чтобы С++ воспринимал me как переменную в запросе, а не слово 'me'?
Как мало вы знаете, как громко вы судите...
|
|
| |
Нохчи | Дата: Вторник, 28 Августа 2012, 19:59 | Сообщение # 6 |
заслуженный участник
Сейчас нет на сайте
| Code char me[] = "admin"; char query[256];
sprintf(query, "INSERT INTO users (id, login) VALUES (NULL, %s)", me); mysql_query(&mysql, query);
Многие вопросы по Windows отпадут, если посмотреть тут
|
|
| |
lumennes | Дата: Вторник, 28 Августа 2012, 21:12 | Сообщение # 7 |
Убийца Diablo
Сейчас нет на сайте
| Нохчи, спасибо, помог. Только данный код у меня не работал, пока я не поставил двойные кавычки у переменной Code sprintf(query, "INSERT INTO users (id, login) VALUES (NULL, '%s')", me); Добавлено (28.08.2012, 21:12) --------------------------------------------- Ура :laugh:, я полностью разобрался с вводом-выводом информации из базы данных MySQL по средствам C++ Всем спасибо, кто помог Теперь я могу сделать авторизацию в клиенте
Как мало вы знаете, как громко вы судите...
|
|
| |