进来就有分 C++ 操作数据库 ?

CrystalofAA 2009-02-16 12:26:14
先说明:我是一个刚接触c++的初学者
在提问之前我也查询了网上很多资料 代码,可是没调通,估计是自己没有掌握好!

我的要求很简单,就是利用c++ 中利用ADO 或 DAO 或 ODBC 连接 ACCESS 数据库,操作ACCESS 数据库。请大侠们给出稍详细的代码!
我查过这个
#import "c:\program files\common files\system\ado\msado15.dll"
no_namespace rename("EOF","adoEOF")
可是不知道为什么 stdafx.h文件中加入这语句后出错,程序总是说找不到该路径(该路径在本机上是存在的 我检查过的) http://www.upschool.com.cn/edu/1322/2006/46/10du275148_1.shtml

如果大侠们有更好的代码,希望能提供点,没有的话 帮忙把上面的问题解决掉也可以。
...全文
284 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyanchao 2009-02-17
  • 打赏
  • 举报
回复
为了那分~~
InfidelX 2009-02-17
  • 打赏
  • 举报
回复
是不是文件的版本不对,或者是路径下面没有哪个文件?

redoffice 2009-02-17
  • 打赏
  • 举报
回复
问题太概括了。。。。真是没法说
madpc 2009-02-17
  • 打赏
  • 举报
回复
#pragma warning(disable:****)

当初用 vc6 做的时候好像也遇到过,大概是 com 引起的
xiaotie1005 2009-02-17
  • 打赏
  • 举报
回复
同学!!!一起等!
CrystalofAA 2009-02-17
  • 打赏
  • 举报
回复
03中好像支持#import "c:\program files\common files\system\ado\msado15.dll" \ no_namespace \ rename ("EOF", "adoEOF")

但05中必须用#pragma warning(disable:4146)
#import "c:\program files\common files\system\ado\msado15.dll" named_guids rename("EOF","adoEOF"), rename("BOF","adoBOF")
#pragma warning(default:4146)
using namespace ADODB;

不知道为什么?
CrystalofAA 2009-02-17
  • 打赏
  • 举报
回复
解决了!是这样的
// 加入ADO支持库
//#import "c:\program files\common files\system\ado\msado15.dll" \
// no_namespace \
// rename ("EOF", "adoEOF")

#pragma warning(disable:4146)
#import "c:\program files\common files\system\ado\msado15.dll" named_guids rename("EOF","adoEOF"), rename("BOF","adoBOF")
#pragma warning(default:4146)
using namespace ADODB;
要用下面的写法。
c++引用要么用include 要么用下面的写法 都可以,就是不能直接用 #import 谁可以解释一下?
qqwx_1986 2009-02-16
  • 打赏
  • 举报
回复
这种书图书馆一大把 都是一步一步告诉你怎么做的的 很清楚
CA_HA_M 2009-02-16
  • 打赏
  • 举报
回复
加在 //{{AFX_INSERT_LOCATION}} 之上
CrystalofAA 2009-02-16
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 waizqfor 的回复:]
http://hi.baidu.com/lninglove/blog/item/3f6cec22959e4ca34723e833.htmlLZ上这看看ADO连数据库的教程
如果想要的话 我这有个源码 比较大 也是对ACCESS数据库操作的 给我发私信 留邮箱吧
[/Quote]
谢谢 我的邮箱 zhousj586@163.com
CrystalofAA 2009-02-16
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 a_rockboy 的回复:]
#import "c:\\program files\\common files\\system\\ado\\msado15.dll" 转义
[/Quote]
试过了 转义也出错
a_rockboy 2009-02-16
  • 打赏
  • 举报
回复
#import "c:\\program files\\common files\\system\\ado\\msado15.dll" 转义
ch_mj 2009-02-16
  • 打赏
  • 举报
回复
迷惑中...
waizqfor 2009-02-16
  • 打赏
  • 举报
回复
http://hi.baidu.com/lninglove/blog/item/3f6cec22959e4ca34723e833.htmlLZ上这看看ADO连数据库的教程
如果想要的话 我这有个源码 比较大 也是对ACCESS数据库操作的 给我发私信 留邮箱吧
qq675927952 2009-02-16
  • 打赏
  • 举报
回复
等待高手!
Rain208 2009-02-16
  • 打赏
  • 举报
回复
up
CrystalofAA 2009-02-16
  • 打赏
  • 举报
回复
UP o UP
thriston 2009-02-16
  • 打赏
  • 举报
回复
学习一下
CrystalofAA 2009-02-16
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 CA_HA_M 的回复:]
加在 //{{AFX_INSERT_LOCATION}} 之上
[/Quote]

// stdafx.h : 标准系统包含文件的包含文件,
// 或是经常使用但不常更改的
// 特定于项目的包含文件

#pragma once

#ifndef _SECURE_ATL
#define _SECURE_ATL 1
#endif

#ifndef VC_EXTRALEAN
#define VC_EXTRALEAN // 从 Windows 头中排除极少使用的资料
#endif

// 如果您必须使用下列所指定的平台之前的平台,则修改下面的定义。
// 有关不同平台的相应值的最新信息,请参考 MSDN。
#ifndef WINVER // 允许使用特定于 Windows XP 或更高版本的功能。
#define WINVER 0x0501 // 将此值更改为相应的值,以适用于 Windows 的其他版本。
#endif

#ifndef _WIN32_WINNT // 允许使用特定于 Windows XP 或更高版本的功能。
#define _WIN32_WINNT 0x0501 // 将此值更改为相应的值,以适用于 Windows 的其他版本。
#endif

#ifndef _WIN32_WINDOWS // 允许使用特定于 Windows 98 或更高版本的功能。
#define _WIN32_WINDOWS 0x0410 // 将它更改为适合 Windows Me 或更高版本的相应值。
#endif

#ifndef _WIN32_IE // 允许使用特定于 IE 6.0 或更高版本的功能。
#define _WIN32_IE 0x0600 // 将此值更改为相应的值,以适用于 IE 的其他版本。值。
#endif

#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // 某些 CString 构造函数将是显式的

// 关闭 MFC 对某些常见但经常可放心忽略的警告消息的隐藏
#define _AFX_ALL_WARNINGS

#include <afxwin.h> // MFC 核心组件和标准组件
#include <afxext.h> // MFC 扩展


#include <afxdisp.h> // MFC 自动化类



#ifndef _AFX_NO_OLE_SUPPORT
#include <afxdtctl.h> // MFC 对 Internet Explorer 4 公共控件的支持
#endif
#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h> // MFC 对 Windows 公共控件的支持
#endif // _AFX_NO_AFXCMN_SUPPORT





#ifdef _UNICODE
#if defined _M_IX86
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_IA64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_X64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#else
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
#endif
#endif

上面是stdafx.h的内容 找不到你说的AFX_INSERT_LOCATION(用的是 VS 2005 )
洞凡都都 2009-02-16
  • 打赏
  • 举报
回复
看看 acci的资料,我想研究一下linux的比较感兴趣.
加载更多回复(6)

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧