分类: C/C++
2008-04-23 21:55:38
VC Oracle 开发入门
作者:
ORACLE 数据库以其优良的性能得到广泛的称赞。但是 ORACLE 客户端不像 SQL Server 能方便地连接到数据库。首先,要给客户机装一个 ORACLEL OLEDB 通讯软件,该软件可从如下地址获得:
只有安装了此软件,客户机才可以和 ORACLE 服务器通讯。为什么 SQL Server 可以直接连到数据库呢,因为微软己经把“SQL
Server 的通讯软件”集成到 Windows 中了。装好通讯软件,我们要进行配置才可以正确的连接到服务器。打开 Net
Configuration Assistance,出现以下画面:
图一
在“监听程序配置”和“命名方法配置”两项保默认,在“本地网络服务名配置”要注意,选择本地网络服务名配置,保持默认到配置服务器这一步,如下:
图二
注意此服务器的名字为 ORACLE 数据库的 SID,我这里是 mike。再下一步是选择协议,一般为TCP,下一步是输入主机名,为服务器的 IP 或
NETBIOS NAME。
图三
要保证能 PING 通主机名。
图四
下一步是测试,最好测试成功,如果不成功,从三个方面入手:
现在用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数据库操作一样......