OracleConnection正在抛出空的异常

我试图从我的新电脑连接到我的Oracle数据库。 我刚刚安装了Visual Studio和ODAC。 但是,当我尝试做一个简单的连接我得到一个空的消息,空来源,空数量,只是与错误代码是-2147467259异常。

OracleConnection Prueba;
Prueba = new OracleConnection("Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=XXX.XXX.XXX.XXX)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=XXXX)));User Id=XXX;Password=XXX;Pooling=true;Max Pool Size=10;Min Pool Size=1");
Prueba.Open();

异常详情
这是Exception.ToString()代码:

“Oracle.DataAccess.Client.OracleException.HandleErrorHelper上的Oracle.DataAccess.Client.OracleException(Int32 errCode,OracleConnection conn,IntPtr opsErrCtx,OpoSqlValCtx * pOpoSqlValCtx,Object src,String过程)
在Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode,OracleConnection conn,IntPtr opsErrCtx,Object src)
在Oracle.DataAccess.Client.OracleConnection.Open()
C: Users Simetri Documents Visual Studio 2010 Projects OracleConnection OracleConnection Program.cs中的OracleConnectionS.Program.Main(String [] args):第19行“

任何想法为什么会发生这种情况?

UPDATE

如果我以管理员身份运行Visual Studio,我不会得到异常,我可以连接到数据库就好了。

我试着给Oracle Directory C:Oracle提供完全控制权限。 但是,如果我以正常的方式运行Visual Studio(而不是管理员),我会不断收到异常。

背景信息
- 我正在使用Windows 7 64位
- Visual Studio 2010
- 我可以用SQL * PLUS连接


所以在安装各种版本的ODAC并搜索与此相关的每一篇文章之后。

最后,32位版本的Clean Install是解决方案。

  • 首先,您需要取消所有您已安装的其他Oracle客户端的所有功能。
  • 之后,寻找你想要的任何ODAC版本(最新版本,如果可能),但一定要下载32位版本。
  • 为什么?

    那么与Visual Studio的开发版本有关。如果您正在开发一个控制台应用程序,您将不会遇到客户端版本问题,但是如果您使用的是Web项目,那么您肯定需要32位版本。

  • 最后请确保您在Visual Studio中的所有项目的目标平台都是“32位”
  • 并引用刚刚安装的新的Oracle.DataAccess.dll

  • 请尝试将连接字符串重新格式化为此表单并查看其工作原理

    <add name="LoisDataAccess" connectionString="Data Source=LOISPRD;Persist Security Info=True;User ID=ABC;Password=DEF" providerName="System.Data.OracleClient" />
    

    如果您使用的客户端是“即时客户端”,那么通过将一些Oracle-DLL复制到您的解决方案中可能会更好 - 只需一步一步即可看到此内容。

    如果可能的话,我会推荐使用不同的.NET提供程序......根据我的经验,大多数商业应用程序比Oracle .NET提供程序的问题要少得多 - 请参阅此处。

    链接地址: http://www.djcxy.com/p/67183.html

    上一篇: OracleConnection is throwing empty exception

    下一篇: Cannot Connect to Oracle in C#