环境 vs2008,win7,oracle10g 服务端,oracle11g客户端
问题:
try { HRESULT hr = pRs->Open((_bstr_t)szSQL, m_pConn.GetInterfacePtr(), adOpenDynamic, adLockOptimistic, adCmdText); } catch (_com_error e) { CString ErrorStr; _bstr_t bstrSource(e.Source()); _bstr_t bstrDescription(e.Description()); ErrorStr.Format( "Code = %08lx\n\tCode meaning = %s\n\tSource = %s\n\tDescription = %s\n", e.Error(), e.ErrorMessage(), (LPCSTR)bstrSource, (LPCSTR)bstrDescription ); }
e = {DB_E_ERRORSINCOMMAND}
e.Error() 80040e14
e.ErrorMessage() IDispatch error #3092
e.Source() OraOLEDB
e.Description() ROW-00054: ?????
O/S-Error: (OS 126) ????????c??`?
原因:服务器上没有设置path变量,指向客户端及服务端路径
解决:计算机->右键属性->高级系统设置->环境变量->系统变量->添加
名称:path
内容:E:\oracle\product\10.2.0\db_1\BIN;E:\app\Administrator\product\11.2.0\client_1\bin;
ps:1.每台电脑oracle安装路径不同,适当修改,仅供参考
2.修改完需重启vs,以刷新path值