我的Oracle版本是11.1.0.6,
vs版本是2005用的oracle occi库是oracle 安装后OCI文件夹中自带的vc8库
#include "occi.h"
using namespace oracle::occi;#include <iostream>using namespace std;
int main()
{
Environment* pEnv=Environment::createEnvironment(Environment::OBJECT);
if (!pEnv)
{
cout<<"failed to create oracle environment..."<<endl;
return 0;
}
else
cout<<" create oracle environment..."<<endl; Connection* pCon=pEnv->createConnection("sys","sys","oradb"); //在这个地方报内存异常 if (!pCon)
{
cout<<"failed to create oracle connection..."<<endl;
Environment::terminateEnvironment(pEnv);
pEnv=0;
return 0;
}
else
cout<<" create oracle connection..."<<endl;
pEnv->terminateConnection(pCon);
Environment::terminateEnvironment(pEnv);
pCon=0;
pEnv=0;
return 0;
}查了很多资料,始终没有解决,内存异常任然报

解决方案 »

  1.   

    谢谢顶贴啊,不过应该不会服务器内存的问题吧,这个只是连接的时候,我查资料应该是编译时一些库配置的问题,按照网上的说法配置还是无法正常运行,不知道有没有高人能指点下,我是用win7系统,vs2005或者vs2008的环境,
      

  2.   

    难道要逼着用oci不成,用过oo4o就很顺利,occi都试了几个版本了,oracle也换了几个版本,vs也从2005,到2008,2010试了个遍,还是有内存异常,不知道有没有高手能指点下到底应该如何配置occi的环境,求解脱啊,oracle这个occi怎么会搞的这么伤呢
      

  3.   

    前段时间,看到一个OCILIB的东东,感觉应该不错。建议用这个。方便。
      

  4.   

    哎,我现在先用oo4o做着,如果实在感觉访问速度不能满足的话,就只能到时候改成oci了。
      

  5.   


    至少,你得
    catch (SQLException e) {
    ....
    捕获一下异常。
    另外,不推荐使用sys用户作为连接用户。
    createEnnironment直接不带参数,或者使用Environment::Default即可,你用OBJECT做什么?使用了oracle数据库中 的对象类型?
      

  6.   

    谢谢各位顶贴的,谢谢iihero,问题找到了,是我测试一直用的sys用户登陆所造成的,我用object对象是因为我要存储空间数据。