| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2039 人关注过本帖
标题:MFC怎么实现ODBC连接ACCESS数据库,请各位指点?
只看楼主 加入收藏
love1234
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-5-26
收藏
 问题点数:0 回复次数:5 
MFC怎么实现ODBC连接ACCESS数据库,请各位指点?
关于利用ODBC动态连接ACCESS数据库?
我的问题不知道行不行?请大家理解

我想通过ODBC远程连接ACCESS数据库,用MFC实现!
譬如,通过用户输入远程端的ip地址或者主机名和密码登陆,然后访问主机上ODBC设置好的数据源test.mdb


急着要,请各位高手帮个忙,谢谢!
搜索更多相关主题的帖子: ODBC MFC 数据库 ACCESS 主机 
2006-05-26 12:58
love1234
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-5-26
收藏
得分:0 

有人么?

急呀

2006-05-26 20:17
love1234
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-5-26
收藏
得分:0 

有人么?

急呀

2006-05-27 16:48
love1234
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-5-26
收藏
得分:0 

有人么?

急呀

2006-05-30 12:32
funnnyhuang817
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-5-30
收藏
得分:0 
【2】用#import指令引入ADO类型库
我们在stdafx.h中加入如下语句:(stdafx.h这个文件哪里可以找到?你可以在FileView中的Header Files里找到)
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF")
这一语句有何作用呢?其最终作用同我们熟悉的#include类似,编译的时候系统会为我们生成msado15.tlh,ado15.tli两个C++头文件来定义ADO库。

几点说明:
(1) 您的环境中msado15.dll不一定在这个目录下,请按实际情况修改
(2) 在编译的时候肯能会出现如下警告,对此微软在MSDN中作了说明,并建议我们不要理会这个警告。
msado15.tlh(405) : warning C4146: unary minus operator applied to unsigned type, result still unsigned

【3】创建Connection对象并连接数据库
首先我们需要添加一个指向Connection对象的指针:
_ConnectionPtr m_pConnection;
下面的代码演示了如何创建Connection对象实例及如何连接数据库并进行异常捕捉。


BOOL CADOTest1Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
HRESULT hr;
try
{
hr = m_pConnection.CreateInstance("ADODB.Connection");///创建Connection对象
if(SUCCEEDED(hr))
{
hr = m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb","","",adModeUnknown);///连接数据库
///上面一句中连接字串中的Provider是针对ACCESS2000环境的,对于ACCESS97,需要改为:Provider=Microsoft.Jet.OLEDB.3.51; }
}
catch(_com_error e)///捕捉异常
{
CString errormessage;
errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage());
AfxMessageBox(errormessage);///显示错误信息
}

在这段代码中我们是通过Connection对象的Open方法来进行连接数据库的,下面是该方法的原型
HRESULT Connection15::Open ( _bstr_t ConnectionString, _bstr_t UserID, _bstr_t Password, long Options )
ConnectionString为连接字串,UserID是用户名, Password是登陆密码,Options是连接选项,用于指定Connection对象对数据的更新许可权,
Options可以是如下几个常量:
adModeUnknown:缺省。当前的许可权未设置
adModeRead:只读
adModeWrite:只写
adModeReadWrite:可以读写
adModeShareDenyRead:阻止其它Connection对象以读权限打开连接
adModeShareDenyWrite:阻止其它Connection对象以写权限打开连接
adModeShareExclusive:阻止其它Connection对象打开连接
adModeShareDenyNone:允许其它程序或对象以任何权限建立连接

我们给出一些常用的连接方式供大家参考:
(1)通过JET数据库引擎对ACCESS2000数据库的连接

m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\test.mdb","","",adModeUnknown);

(2)通过DSN数据源对任何支持ODBC的数据库进行连接:
m_pConnection->Open("Data Source=adotest;UID=sa;PWD=;","","",adModeUnknown);


不知道对你有没帮助???
2006-05-30 15:07
love1234
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-5-26
收藏
得分:0 
xie xie!
2006-05-30 18:22
快速回复:MFC怎么实现ODBC连接ACCESS数据库,请各位指点?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013385 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved