SOCI--C++數據庫訪問庫的理解

SOCI(Simple Oracle Call Interface,最早為瞭支持Oracle訪問 抽象層)是一個開源的數據庫訪問庫,一直有團隊在維護。目前github已經有400多顆星,是一個非常靠譜的庫。git地址: SOCI/soci

使用它的目的:為瞭方便的對數據庫數據的操作。

先看傳統的數據庫訪問和SOCI的結構圖,原理上來說這些組件扮演瞭一個適配器角色, 無論ADO,ODBC還是SOCI等內部實現訪問各類數據庫的驅動,往下負責同數據庫打交道,網上同用戶應用程序打交道。

傳統的方式一般使用ADO,ODBC等方式訪問:

405c32f878ffc49cbc85cd7471bbf494

SOCI 訪問方式,藍色部分為庫實現模塊:

從架構上並沒有看出兩者的從使用便利上有多大的區別,現在看下具體的使用方式:

1.ADO代碼片段

CString strSQL="select * from table1";
pRec->Open(_variant_t(strSQL),(_variant_t)( (IDispatch*)pConn),adOpenDynamic,adLockOptimistic,adCmdText);

while(!pRec->adoEOF){
//_bstr_t類型可以視作COM類型字符串和MFC類型字符串之間的橋梁
CString str=LPSTR(_bstr_t(pRec->GetCollect("name")));
((CListBox*)GetDlgItem(IDC_LIST1))->AddString(str);
pRec->MoveNext();
}

发表回复

相关推荐

晋西北为什么乱成了一锅粥?地球知识局

(⊙_⊙) 每天一篇全球人文与地理 微信公众号:地球知识局 本文出自微信公号地球知识局——晋西北为什么乱成了一锅粥? NO.934- ...

· 刚刚

18K金真的不會褪色嗎?純正幹貨

就標題問題,答案是:會,但不容易。為什麼會呢?很多人會以為是18K被氧化瞭。首先,我們得認識一下18K:18k金是黃金含量至少...

· 19秒前

硬核本剧本杀天花板之作|诡叙教科书

《持斧奥夫》 | 推土机必玩本! 剧本类型 :硬核|恐怖|反转 时间⌚️:5h 游戏人数:6人 推理难度:⭐️⭐️⭐️⭐️⭐️ 评分:9.1 & ...

· 1分钟前

移動硬盤不顯示?進來找答案

正常來說,當我們把移動硬盤連接上電腦,就可以在我的電腦或者磁盤管理器中看到新出現的硬盤盤符。如果沒有看到,隻需要多刷...

· 2分钟前

苏州民宿:盘点那些此生必住的苏州民宿!人均几十、刷爆你的朋友圈!

苏州秀美瑰丽的大好山河与世外桃源般的田园风光让多少文人墨客魂牵梦绕~如果你也被苏州的温婉气质吸引而来,除了欣赏苏州的 ...

· 4分钟前

Copyright 2015-2025 www.icpchaxun.com ©All Rights Reserved.