前幾天發了乙個不完整版的odbc介面類,昨天重新整理、測試了一下,重新發乙個。
odbc_dbmgr.h:
#ifndef __odbc_dbmgr_h__
#define __odbc_dbmgr_h__
#include
#include
#include
#include
class odbc_dbmgr;
odbc_dbmgr.cpp:
#include
#include "odbc_dbmgr.h"
// 遇到錯誤返回的巨集
#define failpause(ret) /
if (sql_success != ret)
odbc_dbmgr*odbc_dbmgr::m_pdb = null;
odbc_dbmgr::odbc_dbmgr()
odbc_dbmgr::~odbc_dbmgr()
odbc_dbmgr* odbc_dbmgr::getinstance()
return m_pdb;
}// 初始化,完成各種環境設定
sqlsmallint odbc_dbmgr::odbc_init()
//// 開啟乙個dsn,開啟之前首先初始化
int odbc_dbmgr::odbc_open(const char* szdsn, const char* szuser, const char* szpassword)
return 0;}//
// 執行sql語句
int odbc_dbmgr::odbc_execsql(char* szsql)
////返回結果集列數
short odbc_dbmgr::odbc_getresultcols()
//// 繫結某列為字串
int odbc_dbmgr::odbc_bindcol2char(short ncol, char* szcolvalue, int ncolvaluelen)
//// 繫結某列為int
int odbc_dbmgr::odbc_bindcol2long(short ncol, long& ncolvalue)
int odbc_dbmgr::odbc_getresultrows()
sqlreturn odbc_dbmgr::odbc_fetch()
// 關閉連線
void odbc_dbmgr::odbc_close()
::sqldisconnect(m_hdbc);
m_bisconnected = false;
}::sqlfreehandle(sql_handle_dbc, m_hdbc);
m_hdbc = null;
}::sqlfreehandle(sql_handle_env, m_henv);
m_henv = null;}}
測試用的main:
#include
#include "odbc_dbmgr.h"
// main
struct taggameid1;
int main(int argc, char* argv)
getchar();
db.odbc_close();
}裡面提供了odbc_dbmgr的乙個singleton入口。經過測試,該簡單介面完整可用。但現在缺少批查、批改、事務等。
配置DB2的資料庫ODBC連線
開啟cmd視窗,輸入db2cmd啟動db2 clp視窗 輸入db2 list node directory檢視是否有資料庫需要連線的節點 如果不存在,則 節點編目 db2 catalog tcpip node 節點名 remote 所要編目的伺服器ip位址 server 所要編目的伺服器端口號,預設...
通過ODBC介面訪問人大金倉資料庫
國產化軟體和國產化晶元的窘境一樣,一方面市場已經存在效能優越的同類軟體,成本很低,但小眾的國產化軟體不僅需要 版權,並且軟體開發維護成本高 另一方面,國產軟體目前普遍難用,效能不穩定,bug滿天飛,雖然可以去迭代,但是沒有人願意耐心地等國產軟體迭代,甚至市場的生態不給國產軟體迭代的機會,選擇性忽視國...
c 中連線ODBC資料庫
using system using system.io using system.data.odbc namespace consoleodbcconnection 公司名稱 所在城市 mydatareader customerid tostring mydatareader companynam...