2014年01月16日 星期四 10:46
Poco的Data模块提供了对关系数据库的一般操作方法,目前支持MySQL和SQLite还有ODBC。其完全是真正C++风格的API,相比之前使用APR dbd的代码,显得非常简洁。
代码示例如下:
#include <iostream>
#include <Poco/Data/Session.h>
#include <Poco/Data/MySQL/Connector.h>
#include <Poco/Data/Statement.h>
using namespace std;
using namespace Poco;
using namespace Poco::Data;
int main(int argc, char** argv) {
MySQL::Connector::registerConnector();
Session mysql("MySQL","host=10.1.9.140;port=3306;user=user;password=pass;db=test;auto-reconnect=true");
mysql << "insert into friends (name,email) values ('netbeans','netbeans@163.com')",now;
string name="abc";
string email=name+"@163.com";
Statement insert(mysql);
insert << "insert into friends (name,email) values (?,?)",use(name),use(email);
insert.execute();
name+=name;
email=name+"@163.com";
insert.execute();
Statement select(mysql);
select << "select name,email from friends",into(name),into(email),range(0,1);
while(!select.done()){
select.execute();
cout << "name: " << name << " " << "email: " << email << endl;
}
mysql.begin();
mysql << "delete from friends",now;
mysql.commit();
//mysql.rollback();
mysql.close();
return 0;
}
参考资料:
/usr/include/Poco/Data/Session.h
/usr/include/Poco/Data/Statement.h
Zeuux © 2025
京ICP备05028076号