乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 43|回复: 2

如何在ObjectARX程序中用MFC OLE DB类访问Access数据库?我在编译时总是出现LNK200

[复制链接]

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2002-2-4 15:40:00 | 显示全部楼层 |阅读模式
如何在ObjectARX程序中用MFC OLE DB类访问Access数据库?我在编译时总是出现LNK2001错误。[br]创建有关头文件,文件名如"myHeader.h"
内容如下:
#ifndef __MyHeader_H__
#define __MyHeader_H__
#include  
extern CComModule _Module;
#include  
#include  
#include  
#endif
在要打开数据库的类声明中加包含上述头文件
并加入以下内容:
CDataSource * pDB;
CSession* pSession;
CMyRecordSet* pSet;
在类实现文件中初始化为上述指针变量为NULL;
在适当在函数中加入以下代码打开数据库(以Access数据库为例):
--pDB = new CDataSource();
--pSession = new CSession();
--pSet = new CMyRecordSet();
--
CDBPropSet--dbinit(DBPROPSET_DBINIT);
--dbinit.AddProperty(DBPROP_AUTH_CACHE_AUTHINFO, true);
--dbinit.AddProperty(DBPROP_AUTH_ENCRYPT_PASSWORD, false);
--dbinit.AddProperty(DBPROP_AUTH_MASK_PASSWORD, false);
--dbinit.AddProperty(DBPROP_AUTH_PASSWORD, "");
--dbinit.AddProperty(DBPROP_AUTH_USERID, "Admin");
--dbinit.AddProperty(DBPROP_INIT_DATASOURCE, "C:\\WuZejin\\Geology\\Zzt2.mdb");
--dbinit.AddProperty(DBPROP_INIT_MODE, (long)16);
--dbinit.AddProperty(DBPROP_INIT_PROMPT, (short)4);
--dbinit.AddProperty(DBPROP_INIT_PROVIDERSTRING, "");
--dbinit.AddProperty(DBPROP_INIT_LCID, (long)1033);
--//dbinit.AddProperty(DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO, false);
--
--HRESULT hr = pDB->OpenWithServiceComponents("Microsoft.Jet.OLEDB.4.0", &dbinit);
--if( hr != S_OK ) return hr;
--hr = pSession->Open(*pDB);
--if ( hr != S_OK ) return hr;
--hr = pSet->Open(*pSession);
--if ( hr != S_OK ) return hr;
--hr = pSet->MoveFirst();
--if ( hr != S_OK ) return hr;
(作者:WuZejin 时间:2001-08-13.10:33:33)
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2002-2-4 15:41:00 | 显示全部楼层
这种方法不是很好,最好使用ADO,毕竟ADO是最新的技术,当然也是功能最强用起来最简单的[br]这种方法不是很好,最好使用ADO,毕竟ADO是最新的技术,当然也是功能最强用起来最简单的 (作者:goldenshin 时间:2001-11-05.19:38:08)
回复

使用道具 举报

158

主题

2315

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2951
发表于 2002-2-4 15:41:00 | 显示全部楼层
MFC OLEDB是与ADO实际是同一技术,只是前者更低一层,但更好控制更灵活,是ADO的MFC界面[br]MFC OLEDB是与ADO实际是同一技术,只是前者更低一层,但更好控制更灵活,是ADO的MFC界面 (作者:WuZejin 时间:2001-11-08.20:17:43)
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2024-11-22 01:53 , Processed in 0.248943 second(s), 58 queries .

© 2020-2024 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表