下面的代码可以连接Oracle 9g, 但是Oracel8g连接不上,
开发环境使用VC++6.0,连接数据库使用OLE DB方式;
请大家帮忙分析下原因,谢谢"Provider=OraOLEDB.Oracle.1;
User ID=call;Password=call;
Data Source='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
(HOST=192.168.1.1)(PORT=1521)))(CONNECT_DATA=(SID=orcl)))'"
开发环境使用VC++6.0,连接数据库使用OLE DB方式;
请大家帮忙分析下原因,谢谢"Provider=OraOLEDB.Oracle.1;
User ID=call;Password=call;
Data Source='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
(HOST=192.168.1.1)(PORT=1521)))(CONNECT_DATA=(SID=orcl)))'"
解决方案 »
- 请高手指教一下!谢谢
- DBA好的去处!应该算是高薪吧
- 根据select出来的月数据,怎么再得到年累计数据?
- 没辙了 看看这sql 怎么优化 给个意见
- 在线等,关于ORACLE批量插入数据,请各路高手发言??
- oracle 的几个小问题 希望各位能够帮我 解决 谢谢了
- 请文各位大大,Oracle 8i的客户端能不能连接上 Oracle 7i服务器?应该怎样配置?(问题很菜,得分多多)
- ORACLE数据库的字符集的修改????
- Oracle中如何进行数据库表结构及数据复制
- Oracle连接不上用户,求大佬帮帮忙
- help!help!问一下~表中的字段名可以作为输入参数传进来吗?~~~
- oracle表空间导出问题。
你8i和9i的两个实例都叫ORCL吗?
参数配置都相同,实例都叫ORCL。
这个是什么意思呢?
Provider=OraOLEDB.Oracle.1
http://download.oracle.com/docs/cd/B19306_01/win.102/b14311/toc.htm
不过是讲10g的
//本地电脑Oracle版本是8.1,系统是2003;
//远程服务器Oracle版本是9,系统是Linux.
//使用PL-SQL能连接上,但是用程序连接不上。。//数据库连接字符串和代码如下:
"Provider=OraOLEDB.Oracle.1;
User ID=call;Password=call;
Data Source='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
(HOST=192.168.1.1)(PORT=1521)))(CONNECT_DATA=(SID=orcl)))'"
//只能初始化一次
if((isInitCom==FALSE)&&(AfxOleInit() == 0))
{ isInitCom = TRUE; //被初始化一次,但是初始化失败
return FALSE;
}
else
{ //成功初始化一次
isInitCom = TRUE;
}if(FAILED(pPtr.CreateInstance("ADODB.Recordset")))
{ return FALSE;
} CString strSRC;
strSRC=strConn; //数据库连接字符串
//查询语句,测试查询语句没有问题
CString strSQL = "select username,sendid,content from VOI_SendSound where content is not null and switchflag=0 and rownum<=10 and sendtime<sysdate";
_variant_t varSRC(strSRC);
_variant_t varSQL(strSQL); if(FAILED(pPtr->Open(varSQL,varSRC,adOpenStatic,adLockOptimistic,adCmdText)))
{ return FALSE;
}
但是PL-SQL都可以连接上服务器,
也确定SQL语句是正确的。
能否查看驱动程序的版本OraOLEDB.Oracle.1???真实环境下:
本地电脑Oracle版本是8.1,系统是2003;
远程服务器Oracle版本是9,系统是Linux.测试环境下:
本地电脑Oracle版本是9,系统是XP;
远程服务器Oracle版本是9,系统是XP.连接字符串如下
"Provider=OraOLEDB.Oracle.1;
User ID=call;
Password=call;
Data Source='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
(HOST=192.168.1.1)(PORT=1521)))(CONNECT_DATA=(SID=orcl)))'"
因为Oracle8环境下缺少OraOLEDB.dll和依赖的相关文件,
从Oracle9下拷贝过去注册下就可以了。