在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);