用ADO常用的連線方式和訪問加密的ACCESS資料庫
在stdafx.h中新增一句指令:
#import "c:\program files\common files\system\ado\msado15.dll" \
no_namespace \
rename ("EOF", "adoEOF")
COM庫的初始化在CWinApp::InitInstance()的過載函式中新增:AfxOleInit(),程式碼如下:
BOOL CADOTest1App::InitInstance()
{
AfxOleInit();
......
}
1. ADO的連線方式:
(1)通過JET資料庫引擎對ACCESS2000資料庫的連線:
m_ pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;
Data Source=C:\\test.mdb","","",adModeUnknown);
注:在使用ACCESS 2007存的資料庫時,上面的函式應改為:
m_ pConnection->Open("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\test.mdb","","",adModeUnknown);
(2)通過DSN資料來源對任何支援ODBC的資料庫進行連線:
m_pConnection->Open("Data Source=adotest;UID=sa;PWD=;","","",adModeUnknown);
(3)不通過DSN對SQL SERVER資料庫進行連線:
m_pConnection->Open("driver={SQL Server};Server=127.0.0.1;DATABASE=vckbase;
UID=sa;PWD=139","","",adModeUnknown);
其中Server是SQL伺服器的名稱,DATABASE是庫的名稱。
2. 訪問加密的ACCESS資料庫的連線方式
訪問加密的ACCESS2002資料庫
_ConnectionPtr m_pConnetion;
m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=資料庫路徑檔名.mdb;UID=Admin;PWD=密碼","","",adModeUnknown);
訪問加密的ACCESS2007資料庫
_ConnectionPtr m_pConnetion;
m_pConnection->Open("Provider=Microsoft.ACE.OLEDB.12.0;Data source=資料庫路徑檔名.accdb;Jet OLEDB:Database Password=密碼","","",adModeUnknown);