日期:2014-05-20  浏览次数:20969 次

.net连不上oracle了,在线求助,着急~
昨天还是正常的,今天不知道啥回事,一直连不上。Connection.open()就报错:
{"OCIEnvCreate 失败,返回代码为 -1,但错误消息文本不可用。"}

跟踪如下:
  在 System.Data.OracleClient.OciHandle..ctor(OciHandle parentHandle, HTYPE handleType, MODE ocimode, HANDLEFLAG handleflags)
  在 System.Data.OracleClient.OracleInternalConnection.OpenOnLocalTransaction(String userName, String password, String serverName, Boolean integratedSecurity, Boolean unicode, Boolean omitOracleConnectionName)
  在 System.Data.OracleClient.OracleInternalConnection..ctor(OracleConnectionString connectionOptions)
  在 System.Data.OracleClient.OracleConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
  在 System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
  在 System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
  在 System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
  在 System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
  在 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
  在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
  在 System.Data.OracleClient.OracleConnection.Open()

搜了不少帖子,基本都说要修改oracle文件夹的权限,已经修改了还是不行。是不是缺失了某些dll文件造成的?因为今天早上开机发现oci.dll文件突然没了,后来重新装了oracle客户端。

------解决方案--------------------
到oracle下载对应的.net客户端odp就可以了。一般要安装两个才不会有问题。
------解决方案--------------------

重装一下 plsql
------解决方案--------------------
那就是配置问题了,楼主重点检查一下配置。
------解决方案--------------------
操作系统是什么,以管理员身份运行