问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

vc6.0 连接access 数据库

发布网友 发布时间:2022-04-07 18:46

我来回答

2个回答

懂视网 时间:2022-04-07 23:08

建立一个连接数据库的类:

1.头文件:ADOConn.h

#import "C:Program FilesCommon FilesSystemadomsado15.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();//断开数据库连接

  

VC++6.0连接Access数据库

标签:

热心网友 时间:2022-04-07 20:16

....... 很少见到这样提问的 vc6连access实现最基本的数据库操作这个已经是很普通的程序了 建议你在百度上搜索vc6 access 源代码 下载一个demo自己看 遇到具体的问题再到这里来提问
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
江西蓝天学院和赣江职业技术学院哪个好? 江西有什么好的中专学校 什么是单点登录(SSO),以及单点登录的实现流程 前端实现单点登录(SSO) 前端单点登录如何实现 面试官:来说说单点登录的三种实现方式 为什么很多人不买哈弗H9 座机如何开通国内长途 座机如何申请 辽宁省出租车手续怎么办? 关于英语学习! 英语学习书籍? 【英语学习】英语该怎么学习?——陆谷孙教授如是说 推荐几本好看的英语学习杂志 英语学习有哪些经典教材? 英语学习的刊物本身 河南许昌暑假放假时间2021? 2021年暑假什么时候放假? 2021年郑州市初中八升九学生暑假是否提前开学 包装及标签机注册商标属于哪一类? 微信重新加好友聊天记录还在吗 Domaine de la Romanée-Conti是什么? 二级魔方怎么拼 请问 酒鬼酒有38°的吗?写着馥郁香型白酒。如果有,价格是多少钱?急,望详细介绍 贵州茅台集团经典玉液30年陈酿52°浓香型白酒多少钱? 拼二级魔方口诀最简单 42度,酒祖杜康,6窖区,20年窖龄老池酿造,浓香型白酒,多少钱一瓶? - 信息提示 佛山公积金无房提取网站申报步骤 油炸食品第二天还能吃吗 零基础学pr生成效果中的油漆桶和渐变 ps油漆桶一直都是黑色 银联闪付,小额免密免签,比二维码还要有优势为什么发展不起来? 求Adobe premiere CS4 相关快捷键? ps时怎样使灵活使用鼠标和快捷键? 精简版怎么改回原来的版本 为什么设置了描边却没有出现效果 关于精简版操作系统变成完整版? 苹果游览器精简版怎样切换完整版? premiere cs4 菜单中英对译 和 特效中英对译 暗黑破坏神2精简版怎么变回完整版? 用什么软件打开step文件怎么打开 怎么吧win7精简版换成其他版 迅雷精简版怎么切换回不是精简版 怎么把迅雷vip尊享版的精简模式切换回 普通模式啊? 怎样把系统精简版恢复到系统完整版 急!!!如何把word2007精简版变成完整版? 25.8M是多少人民币? OFFICE2003精简版如何升级成完整版 一兆是多少人民币