ubuntu c++下连接mysql数据库和数据库的使用

来源:互联网 发布:淘宝网图片 编辑:程序博客网 时间:2024/05/16 17:47

今天在ubuntu下 ,用eclipse连接mysql数据库,总是出现mysql_init() undefined 错误,后来发现需要在项目中添加一个静态链接库。下面把eclipse+CDT用C++连接mysql的过程描述一下。

首先、安装MySQL,在终端中输入:sudo apt-getinstall mysql-server mysql-client(或者在ubuntu的软件中心安装)。同时,还需要安装开发包(ubuntu不会像windows那样会出现c api,要继续安装api),安装开发包命令:
sudo apt-get install libmysqlclient15-dev 

第二、安装eclipse,并配置eclipse用于开发C/C++的环境。可以参考:http://blog.csdn.net/linrulei11/article/details/7298093

第三、eclipse+CDT搭建完成之后,可以新建一个C++ 项目,输入如下测试代码。

#include <mysql/mysql.h>
#include <stdio.h>

int main() {
    MYSQL *conn;
    MYSQL_RES *res;
    MYSQL_ROW row;
   char *server = "localhost";//数据库地址
   char *user = "root";//数据库用户名
   char *password = "kk";//数据库密码
   char *database = "mysql";//使用的库名
    conn = mysql_init(NULL);

   if (!mysql_real_connect(conn, server,
          user, password, database, 0, NULL, 0)) {
      fprintf(stderr, "%s\n", mysql_error(conn));
      return -1;
   }

   if (mysql_query(conn, "show tables")) {
      fprintf(stderr, "%s\n", mysql_error(conn));
      return -1;
   }
    res = mysql_use_result(conn);

   printf("MySQL Tables in mysql database:\n");
   while ((row = mysql_fetch_row(res)) != NULL)
      printf("%s \n", row[0]);

    mysql_free_result(res);
    mysql_close(conn);
    return 0;
}


项目结构如下:


ctrl+b对项目build之后,会出现9个错误。全是无法识别mysql的接口函数。这个时候,在eclipse的“项目->属性->C/C++Build -> settings -> gcc c linker->libraries ”加入mysqlclient。再Build就不会出现错误了。运行之后,也会输出结果。


0 0
原创粉丝点击