您的位置:逆风者 VC++ 正文
 添加时间:2007-09-01 原文发表:2007-08-31 人气:95 来源:vckbase.com

VC Oracle 开发入门

作者:尹传焱

  ORACLE 数据库以其优良的性能得到广泛的称赞。但是 ORACLE 客户端不像 SQL Server 能方便地连接到数据库。首先,要给客户机装一个 ORACLEL OLEDB 通讯软件,该软件可从如下地址获得:

逆风者
ftp://yblshenzhen.8800.org/OraOLEDB.exe 

www.oracle.com

  只有安装了此软件,客户机才可以和 ORACLE 服务器通讯。为什么 SQL Server 可以直接连到数据库呢,因为微软己经把“SQL Server 的通讯软件”集成到 Windows 中了。装好通讯软件,我们要进行配置才可以正确的连接到服务器。打开 Net Configuration Assistance,出现以下画面:


图一

在“监听程序配置”和“命名方法配置”两项保默认,在“本地网络服务名配置”要注意,选择本地网络服务名配置,保持默认到配置服务器这一步,如下:


图二

注意此服务器的名字为 ORACLE 数据库的 SID,我这里是 mike。再下一步是选择协议,一般为TCP,下一步是输入主机名,为服务器的 IP 或 NETBIOS NAME。


图三

要保证能 PING 通主机名。


图四

下一步是测试,最好测试成功,如果不成功,从三个方面入手:

  • 检查 ORACLE 服务器是否启动;
  • 检查 SID 是否正确;
  • 和主机之间的网络是否连通;
  • 用户名和密码没错, 初始为scott/tiger;

现在用VC新建一个基于对话框的工程。我们用ADO连接数据库,在 stdafx.h中加入:

#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF")

在 App 的 Initialize() 函数中加入:

try

{

    m_pConnection.CreateInstance(__uuidof(Connection));

    m_pConnection->Open("Provider=MSDAORA.1;Data Source=mike;","scott","tiger",adModeUnknown);

}

catch(_com_error e)

{

    AfxMessageBox(e.ErrorMessage());

}

m_pRecordset.CreateInstance(__uuidof(Recordset));

m_pRecordset->open(("select * from yourtables",

                    m_pConnection.GetInterfacePtr(),

                    adOpenDynamic,

                    adLockOptimistic,

                    adCmdText));      
其余和普通的ADO数据库操作一样......

相关文章

MFC Activex 录音机控件
VC.NET简单实现GIF动画
清理VC工程
论软件接口中几种底层通讯的实现
简单PID数字控制的VC程序实现
在非MFC程序中引用CString
介绍一个操作DHTML表格的C 对象
案例研究:If-Trader 订单流程处理系统
在VC中调用DirectShow全屏播放视频
UTF-8与GB2312之间的互换
C 类对象的拷贝构造函数
WinCE4.2 下轻松调用 Windows Media Player
带光圈文字输出的实现
浅析三线程程序开发思路与实现
.NET Remoting与分布式应用开发——初识 Re
介绍一个控制并行端口的MFC类
WTL字体类
OAL点点滴滴(二)
如何获取网页中的密码和文本输入框的内容
深入 CSocket 编程之阻塞和非阻塞模式

相关评论


本文章所属分类:首页 VC++

  热门关键字: