连接oracle10g问题

adminwang 2011-12-05 03:23:35
我将连接9i的程序放到有10g的服务器上连接9i和10g都报错
const _com_error::`vftable' *
我的连接字符串如下:
Provider=OraOLEDB.Oracle;Data Source=ORACLE9;User Id=xxx;Password=xxxxxx

连接函数如下:
if(AfxOleInit())//初始化
{
try
{
hr=m_pConnection.CreateInstance("ADODB.Connection");///创建Connection对象
if(SUCCEEDED(hr))
{
m_pConnection->ConnectionTimeout=3;
m_pConnection->Open(_bstr_t(strConn),"","",-1);
if(m_pConnection->State)
{
return 0;
}
else
{
return -1;
}
}
}
catch(_com_error e)
{
return -1;
}
}
...全文
154 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
灿烂李 2011-12-08
  • 打赏
  • 举报
回复
m_sConn.Format("Provider=OraOLEDB.Oracle.1;Password=%s;Persist Security Info=True;User ID=%s;\
Data Source=(DESCRIPTION =(ADDRESS_LIST =(ADDRESS=(PROTOCOL=TCP)(HOST=%s)\
(PORT=%d)))(CONNECT_DATA=(SID=%s)))",m_infoSrv.m_sCode.c_str(),m_infoSrv.m_sUser.c_str(),m_infoSrv.m_sAddr.c_str(),
m_infoSrv.m_nPort,m_infoSrv.m_sDataSrc.c_str());
灿烂李 2011-12-08
  • 打赏
  • 举报
回复
CString sql;
sql.Format("Provider=OraOLEDB.Oracle.10g;Server=%s;port =%d;Data Source=%s;UID=%s;PWD=%s","211.141.141.169",1521,"INTERNAL","report191","report191");

CString m_sConn;//="Provider=OraOLEDB.Oracle.1;Password=report191;Persist Security Info=True;User ID=report191;Data Source=(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 211.144.141.169)(PORT = 1521)) )(CONNECT_DATA = (SID = INTERNAL)))";
m_sConn.Format("Provider=OraOLEDB.Oracle.1;Password=%s;Persist Security Info=True;User ID=%s;\
Data Source=(DESCRIPTION =(ADDRESS_LIST =(ADDRESS=(PROTOCOL=TCP)(HOST=%s)\
(PORT=%d)))(CONNECT_DATA=(SID=%s)))",m_infoSrv.m_sCode.c_str(),m_infoSrv.m_sUser.c_str(),m_infoSrv.m_sAddr.c_str(),
m_infoSrv.m_nPort,m_infoSrv.m_sDataSrc.c_str());
//CString m_sConn=_T("Driver=MySQL ODBC 5.1 Driver;Server= localhost;Database=ivas;Uid=root;Pwd=admin;");
hr = m_pConnection->Open((_bstr_t)m_sConn,"","",adConnectUnspecified);


if(SUCCEEDED(hr))
{
CString sLog;
sLog.Format("零售数据库:%s连接成功!",m_infoSrv.m_sDataSrc.c_str());
//ShowLog("零售",sLog,0);
sError = sLog;
return TRUE;
}
zero_226 2011-12-08
  • 打赏
  • 举报
回复
在每条类似m_pConnection->Open(_bstr_t(strConn),"","",-1);这种函数后,检查一下返回值,如果没有执行成功就getlasterror一下,看看具体为什么出错。
都先生 2011-12-08
  • 打赏
  • 举报
回复
云里雾里
adminwang 2011-12-07
  • 打赏
  • 举报
回复
m_pConnection->Open(_bstr_t(strConn),"","",-1);
这条出错了
黑泡泡选手 2011-12-05
  • 打赏
  • 举报
回复
你用ORACLE客户端能连接到服务器吗?可能有存在版本兼容的问题,在那条语句出问题了?
zyq5945 2011-12-05
  • 打赏
  • 举报
回复
用这个软件试试。

4,018

社区成员

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

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