Linux C/C++ 连接MySQL
2012-06-27 23:24
337 查看
#include <mysql.h> #include <stdlib.h> #include <stdio.h> static char *server_args[] = { "this_program", /* this string is not used */ "--datadir=.", "--key_buffer_size=32M" }; static char *server_groups[] = { "embedded", "server", "this_program_SERVER", (char *)NULL }; int main(void) { if (mysql_server_init(sizeof(server_args) / sizeof(char *), server_args, server_groups)) exit(1); MYSQL *conn; MYSQL_RES *res; MYSQL_ROW row; char *server = "localhost"; char *user = "root"; char *password = "root"; char *database = "gq_web"; conn = mysql_init(NULL); /* Connect to database */ if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) { fprintf(stderr, "%s/n", mysql_error(conn)); exit(1); } /* send SQL query */ if (mysql_query(conn, "show tables")) { fprintf(stderr, "%s/n", mysql_error(conn)); exit(1); } res = mysql_use_result(conn); //utput table name */ printf("MySQL Tables in mysql database:/n"); while ((row = mysql_fetch_row(res)) != NULL) printf("%s /n", row[0]); printf ("Number of rows: %lu/n", (unsigned long) mysql_num_rows(res)); MYSQL_FIELD *field; while ((field = mysql_fetch_field(res))) { printf("field name %s/n", field->name); } int num_fields = mysql_num_fields(res); for (int i = 0; i < num_fields; i++) { field = mysql_fetch_field_direct(res, i); printf("Field %u is %s/n", i, field->name); } if (!mysql_set_character_set(conn, "utf8")) { MY_CHARSET_INFO cs; mysql_get_character_set_info(conn, &cs); printf("character set information:/n"); printf("character set name: %s/n", cs.name); printf("collation name: %s/n", cs.csname); printf("comment: %s/n", cs.comment); printf("directory: %s/n", cs.dir); printf("multi byte character min. length: %d/n", cs.mbminlen); printf("multi byte character max. length: %d/n", cs.mbmaxlen); } /* close connection */ mysql_free_result(res); mysql_close(conn); /* Use any MySQL API functions here */ mysql_server_end(); return EXIT_SUCCESS; }
[root@localhost ]# g++ -o output-file $(mysql_config --cflags) mysql_conn.c $(mysql_config --libs)
[root@localhost ]./output-file
相关文章推荐
- c++使用mysql-connector连接mysql(linux centos6.5)
- MySQL学习笔记_11_Linux下C++/C连接MySQL数据库(一)
- Linux学习之CentOS--CentOS6.5下Mysql数据库的安装及C/C++连接使用Mysql
- Linux下,在Eclipse中实现用c++连接Mysql
- linux中c/c++连接mysql示例程序
- linux下C++连接mysql
- linux c++连接mysql示例
- c++ 通过 myodbc连接到 远程linux 上的mysql server
- linux 下 c++ 连接mysql
- linux 下实现mysql安装连接 c++
- Linux下使用C++连接mysql的方法
- MySQL学习笔记_12_Linux下C++/C连接MySQL数据库(二) --返回数据的SQL
- Linux下C++连接Mysql
- Linux下配置C/C++连接Mysql
- MySQL学习笔记_13_Linux下C++/C连接MySQL数据库(三) --处理返回数据
- Linux 上 用C++ 连接MySQL遇到的那些坑
- Linux编程 - 第一个连接mysql的C程序
- Linux下安装mysql并用c语言连接
- linux下mysql的远程连接
- Linux 下设置Mysql远程连接