📄 adomanager.cpp
字号:
// ADOManager.cpp: implementation of the ADOManager class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "AdoTest.h"
#include "ADOManager.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
ADOManager::ADOManager()
{
SQL="";
::CoInitialize(NULL);
try{
m_connection.CreateInstance(__uuidof(Connection));
m_recordset.CreateInstance(__uuidof(Recordset));
m_cmd.CreateInstance(__uuidof(Command));
m_connection->Open("DSN=SQL2000","","",0);
m_cmd->ActiveConnection=m_connection;
}catch(_com_error &e){
CString eror;
eror.Format("警告:ADO数据源初始化失败!错误信息:%s",e.ErrorMessage());
AfxMessageBox(eror);
}
}
ADOManager::~ADOManager()
{
if(m_connection)
m_connection->Close();
m_connection=NULL;
}
bool ADOManager::OpenRecordSet()
{
try{
BSTR bstrsql=SQL.AllocSysString();
m_recordset->Open(
bstrsql,
(IDispatch*)m_connection,
adOpenDynamic,
adLockOptimistic,
adCmdText
);
}catch(_com_error e){
CString eror;
eror.Format("警告:打开数据表时发生异常。错误信息:%s",e.ErrorMessage());
AfxMessageBox(eror);
return false;
}
return true;
}
bool ADOManager::CloseRecordSet()
{
if(m_recordset){
m_recordset->Close();
}
return true;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -