关闭

MySQL++在KDevelop下的使用

964人阅读 评论(0) 收藏 举报

MySQL++ 安装

  1. 安装 mysql+±2.2.3–1.el5.i386.rpm
  2. 安装 mysql+±devel-2.2.3–1.el5.i386.rpm
  3. 检查安装: 在 /usr/include 目录下可以找到 MySQL++ 文件夹,里面包括 MySQL++ 的所有头文件。

使用
  1. MySQL++需要MySQL服务器安装目录下的 include 文件夹中的头文件,因此需要拷贝这些文件到本地目录中
  2. 使用时需要连接头文件和客户端共享库地址
    KDevelop 下 Target里面右键 选择 Options->libraries->link libraries ouside…内增加
    -L
    -lmysqlpp
    在项目文件夹上右键选择 Options→Includes 增加
    -I/usr/local/include/mysql (这个就是刚才拷贝的include文件夹,我改名为mysql)
    -I/usr/include/mysql++
  3. CPP中加入 #include <mysql++.h>
  4. 之后就是写代码连接数据库啦,代码如下:
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

#include <iostream>
#include <cstdlib>
#include <mysql++.h>

using namespace std;
using namespace mysqlpp;//这个要加上

int main(int argc, char *argv[])
{
Connection con = new Connection();

//创建数据库的连接,参数依次为 dbname,svcIP,username,password
con.connect("test","192.168.0.*","**","1234567");

if (!con)
{
cout << "Connect failed~!" << endl;
}
else
{
cout << "Oh.year~!" << endl;
cout << con.client_info() << endl; //显示客户端信息
cout << con.host_info() << endl; //应该是连接的服务器与使用的协议
cout << con.server_info() << endl; //显示服务器信息
cout << con.stat() << endl; //server当前状态
}

//写个插入语句吧,证明真的连上并能用
//异常要抓一下。
try
{
Query query = con.query();
query << "insert into test_table values ('test','')";

cout << "Query: " << query.preview() << endl;

query.execute();
cout << "Oh,year,Success~!" << endl;
}
catch(const BadQuery& er)
{
cerr << "error: " << er.what() << endl;
}

//光插入不够,还要查询
try
{
Query query = con.query();
query << "select b from test_table";

ResUse res = query.use(); //构造ResUse的对象res
Row row = res.fetch_row(); //将数据fetch到row对象中
cout << row.raw_data(0) << endl; //第0个字段的内容
}
catch(const BadQuery& er)
{
cerr << "Select error: " << er.what() << endl;
}


return EXIT_SUCCESS;
}
 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:87059次
    • 积分:1192
    • 等级:
    • 排名:千里之外
    • 原创:31篇
    • 转载:2篇
    • 译文:0篇
    • 评论:13条
    文章分类
    最新评论