MySQL++学习日记(二)

我只是将文档里的一些东西写了下来,我的学习参考http://yun.baidu.com/share/link?shareid=524984541&uk=121920724,也是在网上找的一个中文文档,有人需要的话可以去提=。=。


MySQL++中的一些特殊处理:

             SELECT* FROM ××× WHERE item = '×××';

等价于

             strings = "×××";

             query<< "SELECT * FROM ××× WHERE item = " <<quote_only << s;

 

          SELECT* FROM ××× WHERE item = '×××'×××';

对这种单引泄露的操作:

             strings = "×××'×××";

             query<< "SELECT * FROM ××× WHERE item = " << quote<< s;

MySQL++的数据类型:

              mysqlpp::×××

当SQL NULL 时一个类型修饰时,

MySQL++提供一个空的模板去实现类似于C++的NULL类型,例如:

              mysqlpp::sql_×××_null  ×××;

当SQLNULL是一个唯一值时:

              myfield= mysqlpp::null;

MySQL++的特殊的String类型:

String和SQLTypeAdapter,

Row::operator[]的返回值是String,String比std::string强大的一点,String可以将Data类型转换为String类型,反之亦然。如初始化

“2010-01-01”,String可将其转化为Data.

MySQL++的三种查询语句:
Query::execute(),Query::store(),Query::use().
execute()返回SimpleResult,例如是否执行成功,操作行数等。
store()返回StoreQueryResult对象,对象记录全部查询结果。
use()返回UseQueryRusult对象,数据库每次返回一个数据。(巨大量级查询使用)

这里有一段使用use()的代码:

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

using namespace std;

int main()
{
    mysqlpp::Connection conn(false);
    if(conn.connect("test","localhost","×××","××××"))
    {
        mysqlpp::Query query=conn.query("select * from Student");
        if(mysqlpp::UseQueryResult res=query.use())
        {
        cout<<setw(20)<<"name"<<setw(10)<<"ID"<<endl;
        while(mysqlpp::Row row=res.fetch_row())
        {
        cout<<setw(19)<<row["name"]<<setw(9)<<row["ID"]<<endl;
        }
         if(conn.errnum())
              {
                  cerr<<"Error received in fetching a row:"<<
                      conn.error()<<endl;
                  return 1;
              }
        return 0;
        }
        else
        {
        cerr<<"Faild to get data:"<<query.error()<<endl;
        return 1;
        }
    }
        else
        {
        cerr<<"DB connection failed: "<<conn.error()<<endl;
        return 1;
        }
}







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值