Poco資料庫操作

2021-06-21 05:25:07 字數 1641 閱讀 6025

1.poco進行資料庫操作的步驟一般是:

a. 建立會話(session)

b. 從db中讀寫資料(into, use)

c. 使用statements

d. 使用容器(collection) (資料,集合...)

e. 使用limit限定

f. 如何使用複雜的資料型別(如何將乙個c++物件對映到資料庫的表

下面是乙個簡單的運算元據庫的示例:

#include "poco/string.h"

#include "poco/format.h"

#include "poco/exception.h"

#include "poco/data/common.h"

#include "poco/data/blob.h"

#include "poco/data/statementimpl.h"

#include "poco/data/mysql/connector.h"

#include "poco/data/mysql/mysqlexception.h"

#include "poco/data/sqlite/connector.h"

#include using namespace poco::data;

using poco::data::mysql::connectionexception;

using poco::data::mysql::statementexception;

using poco::format;

using poco::notfoundexception;

poco::sharedptr_psession = 0;

//poco::sharedptr_pexecutor = 0;

std::string _dbconnstring = "user=smart;password=smart;db=smart;compress=true;auto-reconnect=true";

int _tmain(int argc, _tchar* argv)

catch (connectionexception& ex)

if (_psession && _psession->isconnected())

std::cout << "*** connected to " << '(' << _dbconnstring << ')' << std::endl;

int i;

poco::data::session ses(mysql::connector::key, _dbconnstring);

int count = 0;

ses << "select count(*) from smart_u_street",into(count),now;

std::cout<<"street has "<>i;

return 0;

}

2.poco資料庫緩衝池的使用

poco::data::sessionpool用於管理一組session。當需要session時,session池首先查詢已初始化的會話,如果找到了,將返回乙個session物件給呼叫者,並設定此session物件為使用當中。

這裡是使用sessionpool的乙個簡單的小示例。

Poco資料庫操作

記錄集 recordset poco data recordset類提供了乙個通用的方法與資料庫的表進行互動,你可以使用recordset進行 a.遍歷資料表中所有的行與列 b.獲取各列的元資訊,比如名稱,型別,長度等.使用recordset,需要先建立乙個statement並執行他,從statem...

POCO中資料庫的操作

poco關於資料庫封裝操作放在data目錄下,以前用過關於sqlite的封裝庫感覺挻不錯的,這次要寫個c s的軟體資料庫採用的是sql server,於是就再次選用了poco。關於odbc的操作示例在poco中好像執行時沒有啥效果,今天看著示例自已寫了個。第一步 將資料庫tacksjk.mdf附加到...

Poco資料庫操作使用者手冊 二

記錄集 recordset poco data recordset類提供了乙個通用的方法與資料庫的表進行互動,你可以使用recordset進行 a.遍歷資料表中所有的行與列 b.獲取各列的元資訊,比如名稱,型別,長度等.使用recordset,需要先建立乙個statement並執行他,從statem...