資源描述:
《mfc通過ado方式連接數(shù)據(jù)庫.docx》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、1事先初始化COM庫::CoInitialize(NULL);?2:定義_ConnectionPtr對象指針,通過m_pConnection.CreateInstance("ADODB.Connection");創(chuàng)建實例并通過Open()方法連接數(shù)據(jù)庫??3?通過ConnectionPtr對象的Execute方法執(zhí)行sql語句(也可通過_CommandPtr對象)??4:定義_ResulsetPtr執(zhí)行查詢sql語句,并返回結(jié)果集??????類的聲明classADOConn{//定義變量public:?//添加一個指向Connection對象的指針:???
2、_ConnectionPtrm_pConnection;?//添加一個指向Recordset對象的指針:?_RecordsetPtrm_pRecordset;public:?ADOConn();?virtual~ADOConn();???voidConnection();//連接數(shù)據(jù)庫?BOOLIsConnection();//判斷是否連接了數(shù)據(jù)庫?_RecordsetPtrExecuteSQL(_bstr_tstrSQL);//執(zhí)行sql語句?voidExitConnection();//斷開與數(shù)據(jù)的連接???intstate;//數(shù)據(jù)庫狀態(tài),1連接0未
3、連接};類的實現(xiàn)://ADOConn.cpp:implementationoftheADOConnclass.////////////////////////////////////////////////////////////////////////#include"stdafx.h"#include"企業(yè)人事管理系統(tǒng).h"#include"ADOConn.h"#ifdef_DEBUG#undefTHIS_FILEstaticcharTHIS_FILE[]=__FILE__;#definenewDEBUG_NEW#endif//////////////
4、//////////////////////////////////////////////////////////Construction/Destruction//////////////////////////////////////////////////////////////////////ADOConn::ADOConn(){?state=0;//初始化數(shù)據(jù)庫狀態(tài),1連接0未連接}ADOConn::~ADOConn(){}voidADOConn::Connection(){?::CoInitialize(NULL);?//AfxOleInit
5、();//?try{?m_pConnection.CreateInstance("ADODB.Connection");//???//m_pConnection.CreateInstance(__uuidof(Connection));//?//_bstr_tstrSQL="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=企業(yè)人事管理系統(tǒng)數(shù)據(jù)庫\RSGLXT.mdb";//?//m_pConnection->Open(strSQL,"","",adModeUnknown);//Home.mdb放在工程目錄下//連接
6、ACCESS數(shù)據(jù)庫//?_bstr_tstrSQL="Driver={SQLServer};Server=ZLQ-PC\SQLEXPRESS泉水叮咚;Database=用VC++做的企業(yè)人事管理系統(tǒng)";//連接SQL2005數(shù)據(jù)庫,注意Server=ZLQ-PC\SQLEXPRESS泉水叮咚中是兩個\,即使你的數(shù)據(jù)庫服務(wù)器只有一個,也要再加上1個,否者會連接不成功//?m_pConnection->Open(strSQL,"sa","123",adModeUnknown);//?AfxMessageBox("連接成功");//?//??//????
7、?}catch(_com_errore){AfxMessageBox("連接失敗");}???//方式二?HRESULT??hr;?try?{??hr=m_pConnection.CreateInstance("ADODB.Connection");;///創(chuàng)建Connection對象??if(SUCCEEDED(hr))??{???_bstr_tstrSQL="Driver={SQLServer};Server=ZLQ-PC\SQLEXPRESS泉水叮咚;Database=用VC++做的企業(yè)人事管理系統(tǒng)";//連接SQL2005數(shù)據(jù)庫,注意Server
8、=ZLQ-PC\SQLEXPRESS泉水叮咚中是兩個\,即使你