客户端是Oracle 11g的,服务器端是Oracle 10g,用System.Data.OracleClient操作数据,连接的时候报错,“OCIEnvCreate 失败,返回代码为 -1,但错误消息文本不可用”,请问要如何解决。程序是window Applcation。
谢谢!

解决方案 »

  1.   

    这是我找到的,看能不能帮到你:
    1、配置tnsnames.ora。配置方法网上很多。
    2、完善环境变量配置。环境变量的配置网上也很多,这里不列举了
    3、最重要的一点,注册表加入下面键值   
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]
    "LD_LIBRARY_PATH"="F:\*\bin"
    "NLS_LANG"="AMERICAN_AMERICA.ZHS16GBK"
    "TNS_ADMIN"="F:\*\bin"
    具体路径根据实际情况修改。注册表加入下面键值后,重新调试程序,顺利通过。
     来自: http://www.cnblogs.com/dashan9zj/archive/2009/07/26/1531499.html
    完成了以上几个步骤,发现我的oracle还是连接不上。
    通过一篇文章我突然意识到,是不是我的iis没有装全?于是重新安装iis,根据
    http://www.cnblogs.com/darwinux/archive/2009/11/15/1603489.html
    中显示的图片完成了iis的功能扩展。怀着激动的心情,我重新打开了vs2005并运行程序。还是不行……
    最后几乎绝望的使用管理员重新启动vs2005,然后点击调试。参考地址:
    http://www.cnblogs.com/destimarve/archive/2010/03/17/oracleTNS.html
      

  2.   

    http://moretry.blog.163.com/blog/static/26442045201091410333434/
      

  3.   


    OracleConnection conn = null;
    conn = new OracleConnection("User ID=downsoft;Password=sys;Data Source=orcl");
    if (conn.State != ConnectionState.Open)
      conn.Open();
    或者参见