用ODBC如何连接ORACLE数据库

rockhard 2002-11-04 06:31:54
假设数据库机器名:NEWORA,地址:10.1.2.253,

用户名:SCOTT,密码:TIGER

重写GetDefaultConnect()函数:
CString CMyDataApp2Set::GetDefaultConnect()
{
  return _T("DRIVER={ORACLE ODBC DRIVER};SERVER=10.1.2.253;databasename=NORA8;UID=Scott;PWD=tiger;");
}

这段代码为何在调用数据集Open方法后总是不能打开数据集?

应该怎么写此连接串?
...全文
311 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
52001314 2002-11-04
  • 打赏
  • 举报
回复
建议用CDatabase database;
database.Open(("ODBC;DSN=NORA8;UID=Scott;PWD=tiger");

CMyDataApp2Set m_set;
m_set.pDatabase=&database;
m_set.Open();

这样重用database,你同时打开几个set,在Oracle中只占用一个进程。

如果每次m_set去调用GetDefaultConnect(),建立一个新的连接,数据库中就会多出一个进程,而且速度也比较慢。

52001314 2002-11-04
  • 打赏
  • 举报
回复
然后在控制面板-〉管理工具->数据源中建立数据源
52001314 2002-11-04
  • 打赏
  • 举报
回复
同意nuaawyd.

要安装oracle客户端,然后修改 oracle/ora81/NETWORK/ADMIN/tnsnames.ora


加入
MYDSN=
(DESCRIPTION =NORA8
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.2.253;)(PORT = 这里填你的端口))
)
(CONNECT_DATA =
(SID=Scott)
)
)
nuaawyd 2002-11-04
  • 打赏
  • 举报
回复
首先你的机子要安装oracle客户端,然后在控制面板中使用ODBC数据源建立数据源按你的就是NORA8,你的服务器ip地址是在oracle客户端连接是使用的。不需要写道程序中。最后GetDefaultConnect函数应该是这样

CString CMyDataApp2Set::GetDefaultConnect()
{
return _T("ODBC;DSN=NORA8;UID=Scott;PWD=tiger");
}

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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