gpt4 book ai didi

c# - OracleConnection 抛出空异常

转载 作者:行者123 更新时间:2023-11-30 21:04:21 25 4
gpt4 key购买 nike

我正在尝试从我的新 PC 连接到我的 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 at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure)
at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, Object src)
at Oracle.DataAccess.Client.OracleConnection.Open()
at OracleConnectionS.Program.Main(String[] args) in C:\Users\Simetri\Documents\Visual Studio 2010\Projects\OracleConnection\OracleConnection\Program.cs:line 19"

知道为什么会发生这种情况吗?

更新

如果我以管理员身份运行 visual studio,我不会遇到异常,我可以很好地连接到数据库。

我尝试授予对 Oracle 目录 C:\Oracle 的完全控制权限。但是,如果我以正常方式(不是以管理员身份)运行 Visual Studio,我会不断收到异常。

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

最佳答案

所以在安装各种版本的 ODAC 并搜索与此相关的每一个帖子之后。

最后,32 位版本的全新安装是解决方案。

  • 首先,您需要卸载您安装过的所有其他 oracle 客户端。
  • 之后,寻找您想要的任何 ODAC 版本(如果可能,请使用最新版本)但务必下载 32 位版本。

为什么?

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

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

关于c# - OracleConnection 抛出空异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12460384/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com