VC连接ORACLE遇到的问题

环境配置:

VC++6.0  + ADO + ORACLE9i + winXP。

问题:

报出ORA-12154: TNS:could not resolve service name的错误。

以下是连接程序部分代码:

//打开数据库函数

BOOL CADO::openDB(CString m_strPathName, CString m_strName, CString m_strPassword, CString m_strProvider)

 try
 {
  initConnection();
  initRecordSet();
  initCommand();

  m_pConnection->Provider = _bstr_t(m_strProvider);

     if(S_OK == m_pConnection->Open(_bstr_t(m_strPathName),
                             _bstr_t(m_strName),
           _bstr_t(m_strPassword),
           adModeUnknown))
   return TRUE;
  else
   return FALSE;
 }
 catch(_com_error &e)
 {
  AfxMessageBox(e.Description());
  return FALSE;
 }
}

调用打开函数代码:

  if(!(classAdo.openDB(dataSource,strUser,strPassword,"OraOLEDB.Oracle.1")))
  {
   AfxMessageBox("连接数据库失败");
   return FALSE;
  }

上述同样的代码在不同的工程中连接数据库,有一个没有问题,另一个就连接错误出现刚才的错误。

解决方法:

出现问题的工程的路径是:

D:/Documents and Settings/wlw/桌面/NEW/新建文件夹 (4)/YXRM

将 新建文件夹 (4)---》新建文件夹4后,重新编译连接数据库,OK。

问题很奇怪,不知道是什么原因????

你可能感兴趣的:(VC连接ORACLE遇到的问题)