1) mysqlpp::Connection con(false); //定义了MySQL连接对象
2) con.set_option(new mysqlpp::SetCharsetNameOption("gbk"));//设置字符编码为GBK
mysqlpp::SetCharsetNameOption opt = new mysqlpp::SetCharsetNameOption("gbk");
con.set_option(opt);
创建SetCharsetNameOption堆对象,con结束自动释放opt,不允许delete opt;
3) mysqlpp::Connection::Connection ( const char * db, const char * server =0
, const char * user =0
, const char * password =0
, unsigned int port =0
)
* 数据库名称:这我们在准备数据时,事先就在MySQL数据服务中创建好了。
* 数据库所在主机地址:localhost或者127.0.0.1,是操作系统固定用来表示本机的地址。如果你确实把MySQL安装在局域网中另一台电脑上了,那么这里请填写它的IP地址,并确保当前写程序的机器,和数据库服务器在网络上是可互通的。
* 用户名: MySQL安装配置时,默认的用户名就是root。
* 数据库连接密码:MySQL安装配置时,你所写的密码,还记得吗?在本例中,密并没有直接写在代码——这很英明,它在运行时接受输入。
例如:con.connect("Database","localhost","root",pwd.c_str())
pwd.c_str() 转换到C语言的字符串,header:<string>
4) Query mysqlpp::Connection::query(const std::string& qstr)
例如:mysqlpp::Query query = con.query("SELECT index, name"
" FROM Datebase ORDER BY index");
mysqlpp::StoreQueryResult res = query.store();//query.store()函数执行查询,并且将查询结果保存到res对象
if (!res)
{
cout << "查无记录?请检查程序中query语句是不是写错了!" << endl;
return -1;
}
res.num_rows() //返回查询结果记录行数
res[i]["abs_index"] //返回查询结果中,”abs_index” 字段的值