linux c语言连接mysql

ubuntu下使用apt-get安装mysql:

 sudo apt-get install mysql-server
 sudo apt-get install mysql-client
 sudo apt-get install libmysqlclient-dev

安装过程中会提示输入创建root用户的密码,是mysql的root用户而不是linux的root用户。

安装完成后可在命令行登陆mysql:

 $ mysql -u root -p

查看数据库,选择数据库mysql,查看表:

 mysql> show databases;
 mysql> use mysql;
 mysql> show tables;

然后将以下代码复制到mysql_tmp.cpp并保存:

 #include <mysql/mysql.h>
 #include <stdio.h>
 #include <stdlib.h>
 int main()
 {
     MYSQL *conn;
     MYSQL_RES *res;
     MYSQL_ROW row;
     char server[] = "localhost";
     char user[] = "root";
     char password[] = "root's passwd";
     char database[] = "mysql";

     conn = mysql_init(NULL);

     , NULL, ))
     {
         fprintf(stderr, "%s\n", mysql_error(conn));
         exit();
     }

     if (mysql_query(conn, "show tables"))
     {
         fprintf(stderr, "%s\n", mysql_error(conn));
         exit();
     }

     res = mysql_use_result(conn);

     printf("MySQL Tables in mysql database:\n");

     while ((row = mysql_fetch_row(res)) != NULL)
     {
         printf(]);
     }

     mysql_free_result(res);
     mysql_close(conn);

     printf("finish! \n");
     ;
 }

其中代码11行处改为设置的mysql的root用户密码。

编译链接执行:

 $ g++ -c mysql_tmp.cpp
 $ g++ mysql_tmp.o -o mysql_tmp -lmysqlclient
 $ ./mysql_tmp

也可以编译链接一步:

 $ g++ mysql_tmp.cpp -o mysql_tmp -lmysqlclient
 $ ./mysql_tmp
上一篇:飘逸的python - 两种with语句实现方法


下一篇:数据操作So easy-LINQ解析