VC + + 6.0 액세스 데이터베이스 연결
2259 단어 Access
1. 헤더 파일: ADOConn. h
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF")rename("BOF","adoBOF")
class ADOConnN
{
public:
_ConnectionPtr m_pConnect;
_CommandPtr m_pCommand;
_RecordsetPtr m_pRecord;
void OnInitADOConn();//
void ExitConnect();//
void ExecuteSQL(CString sqlstr);// 、 、
_RecordsetPtr GetRecord(CString sqlstr);//
};
2. Stdafx. h 헤더 파일 에 추가:
#include "ADOConn.h"
3. 구현 파일: ADOConn. cpp
#include "stdafx.h"
void ADOConnN::OnInitADOConn()
{
::CoInitialize(NULL);
try
{ //
m_pConnect.CreateInstance("ADODB.Connection");
//
CString strConnect="DRIVER={Microsoft Access Driver (*.mdb)};uid=;pwd=;DBQ=localwork.mdb;"; // localwork.mdb
// Open
m_pConnect->Open((_bstr_t)strConnect,"","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox(" , !");
}
}
void ADOConnN::ExitConnect()
{
if(m_pRecord!=NULL)
m_pRecord->Close();
m_pConnect->Close();
::CoUninitialize();
}
void ADOConnN::ExecuteSQL(CString sqlstr)
{
m_pConnect->Execute((_bstr_t)sqlstr,NULL,adCmdText);
}
_RecordsetPtr ADOConnN::GetRecord(CString sqlstr)
{
_RecordsetPtr m_precordset=m_pConnect->Execute((_bstr_t)sqlstr,NULL,adCmdText);
return m_precordset;
}
4. 적용:
CString bstrSQL ="select * from tb_UserInfo";//tb_UserInfo localwork.mdb
ADOConnN con;//
con.OnInitADOConn();//
con.m_pRecord=con.GetRecord(bstrSQL);//
while(!con.m_pRecord->adoEOF)
{
m_Grid.InsertItem(0,"");
m_Grid.SetItemText(0,0,(char*)(_bstr_t)con.m_pRecord->GetCollect("Username"));//Username tb_UserInfo
m_Grid.SetItemText(0,1,(char*)(_bstr_t)con.m_pRecord->GetCollect("password"));//password tb_UserInfo
//
con.m_pRecord->MoveNext();
}
con.ExitConnect();//
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Access 사용 요약DataSource만 지정하면 됩니다.Data 디렉토리.Asp.net의 이런 방식은 우리로 하여금 상대적인 경로로 데이터베이스 파일의 위치를 지정하는 데 매우 편리하게 할 수 있다.여기서 Provider는 Oledb...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.