问题标签 [odac]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1523 浏览

c# - 使用 Visual Studio 2008 连接到 Oracle

我对 Oracle 非常陌生,并试图在 C# 中的 Visual Studio 2008 框架 3.5 上创建一个测试应用程序。

我有从位于服务器上的 Oracle 数据库表生成简单 xml 文件的基本要求。

我的 Oracle 客户端和服务器版本如下Oracle 客户端和服务器版本

我还注意到我在 C:\DevSuiteHome_5\NETWORK\ADMIN 上有 sqlnet.ora 和 TnsNames.ora 文件,其中包含服务器的连接详细信息。

因此,要连接到 Oracle 数据库:
1.首先,我需要安装ODAC,然后添加以下引用:

这一切似乎完全可以理解,但是我必须从上面的链接安装哪个 64 位版本的 ODAC/或者我可以安装最新的吗?
任何用于在服务器上创建带有数据库的示例应用程序的示例/链接都会非常有帮助。

提前致谢。

0 投票
1 回答
1145 浏览

c# - 使用 DbProviderFactory 对 Oracle 对象进行单元测试时的 System.InvalidCastException

在使用 System.Data.Common.DbProviderFactory 时,我们在 NUnit 测试中运行代码时会收到此错误,但在运行常规 Web 应用程序时不会出现此错误。

错误

System.InvalidCastException:[A]Oracle.DataAccess.Client.OracleParameter 无法转换为 [B]Oracle.DataAccess.Client.OracleParameter。类型 A 源自位置 'C:\Windows\assembly\GAC_32\Oracle.DataAccess\2.112.1.2__89b483f429c47342\ Oracle.DataAccess.dll'。类型 B 源自 'Oracle.DataAccess, Version=4.112.1.2, Culture=neutral, PublicKeyToken=89b483f429c47342' 在位置 'C:\Windows\Microsoft.Net\assembly\GAC_32\Oracle.DataAccess\v4 的上下文'Default'中.0_4.112.1.2__89b483f429c47342\Oracle.DataAccess.dll'。

我们有单元测试项目引用的 2.112.1.2 程序集,我们甚至尝试了“使用特定版本”和“复制本地”,但它只是没有看到它继续从 GAC 中的较新版本加载的 DLL。

0 投票
1 回答
816 浏览

oracle - 为什么当前的 Oracle ODAC 连接性在 VS 2013 中不可见?

我正在尝试在 Visual Studio 2013 中设置我的第一个 Oracle 数据库连接,数据源可用的唯一选项是选择“Oracle 数据库”。但是该选择表明它已被弃用(它甚至不允许我像在 VS2012 中那样选择架构,无论如何,它是不可用的)。

我已经安装了适用于 VS 2012 (11.2.0.3) 的 ODAC。有什么方法可以让 VS 2013 识别我已经安装了它(尝试引用 Oracle 数据客户端但没有用)。选择“其他”不会为我提供任何其他选择。

我是否被迫安装 ODAC 12c 以便 VS 2013 看到它?为什么它看不到 ODAC 11?由于其他项目依赖于较旧的项目,我宁愿不进行 12c 安装(而且,是的,我们可以走虚拟机路径,但这不是一个直接的选择)。

0 投票
2 回答
233 浏览

c# - 如何使用 DB Connection to Oracle 配置“独立”.NET 应用程序?

我有一个用 .NET 开发的 WebService,它连接到一个 Oracle 数据库。为此,我使用 Oracle 提供的 ODAC。

但是每次我需要在客户端机器上安装我的应用程序时,我都会在“Oracle 客户端”方面遇到很多麻烦,这取决于他是否已经安装了不同版本的 Oracle 客户端,或者他是否有一个不同的平台(32 位、64 位)或其他任何平台。

关键是我每次都花太多时间试图解决这个问题。

有没有一种方法可以配置我的应用程序,我可以安装它,它有它需要的一切。而且我不需要担心服务器安装了什么或将安装什么。有办法吗?

0 投票
2 回答
2313 浏览

asp.net - PLS-00306:调用中的参数数量或类型错误.... ASP.NET

我有一个至少有 30 个参数的存储过程。大多数情况下都指定了默认值,没有指定默认值的被认为是强制性的。

以下通过 SQL plus 执行时对我有用。

大多数是 Varchar2,除了日期时间(日期时间)、ce_doc_id 是数字和 error_product 是数字。

当我尝试将它与 asp.net 和 oracle.dataaccess 组件一起使用时,它始终给我:

PLS-00306:调用“PROCEDURE NAME”时参数的数量或类型错误。

现在开车有点疯狂。

以下是我的(尽管代码很乱)。

在上一个版本(如已发布)中,我用 returnvalue 替换了输出,看看它是否有任何区别 - 没有。

我是否遗漏了什么,或者因为我使用的是 asp.net 和 oracle odac,我是否需要指定所有参数,即使是那些具有默认值的参数?

0 投票
1 回答
867 浏览

c# - 本地安装的 Oracle ODAC 11.2 和 VS2010 C# 应用程序运行良好,但无法在安装了 ODAC 11.2 的服务器上运行

我已经为此苦苦挣扎了几个小时,我希望这是我错过的简单事情。情况如下:

  1. 我使用 Visual Studio 2010 构建了一个 .Net 4.0 SOAP Web 服务,并在本地安装了 ODAC 11.2。它安装了 ODP.Net 和其他所有东西。见下图。

  2. 在本地机器上的 IIS 上运行一切正常。连接到数据库,更新等一切都很好。

  3. 当我尝试在安装了 ODAC 11.2 的 Windows 2008 IIS 7 服务器上调用 Web 服务方法调用时,问题就出现了。Web 服务只是旋转。

任何有关调试建议的帮助表示赞赏。我没有对服务器的管理访问权限,并且我只获得了 ODAC 安装文件夹内容的屏幕截图,因此我可以查看其中的内容。(如下所示)。

还要放入我的 web.config 连接字符串,看看我是否遗漏了一些东西。

提前感谢任何对我有一些想法的人,让我继续前进!!!

ODAC 本地安装在我的开发机器上

服务器上 ODAC 文件夹的屏幕截图

0 投票
1 回答
11421 浏览

oracle - odac 11.2.0.4 xcopy 在 vs2012 中安装并连接到数据库

我有带有通用安装程序的 odac 的 oracle 11.2.0.3 x32。安装 odac 后,我可以在 Visual Studio 2012 Connect to Database 窗口中看到 oracle 提供程序。现在在安装 odac 64 位 ODAC 11.2 Release 5 (11.2.0.3.20) Xcopy for Windows ( http://www.oracle.com/technetwork/database/windows/downloads/index-090165. html ) 我在 VS2012 的连接到数据库窗口中没有看到 oracle 提供程序。我试过这个:

“其中“odac”是安装时使用的 Oracle 主目录名称”。

我将 odac 更改为“\app\Admin\product\11.2.0\client_1”和“OraClient11g_home1”,但这没有帮助。

我需要解释如何正确地做到这一点,也许我必须设置环境变量或做其他事情。

编辑: 对于我的 oracle(11.2.0.4)版本,我找不到带有 oracle 开发人员工具的 odac。

0 投票
2 回答
4340 浏览

ssis - SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER

试图让它在我的 Windows 7 64 位机器上工作是一场真正的斗争。

我有一个将数据从 Oracle 移动到 SQL 的包,并且在我们的 Windows 2008 R2 测试服务器上它工作正常(在 BIDS 内)。

到目前为止我所尝试的......

  • 将 BIDS 从 Program Files (x86) 复制到 Program Files(以消除括号问题)

  • 安装了 32 位和 64 位 Oracle 以及 32 位 ODAC。

  • 尝试将 DelayedValidation 设置为 TRUE

  • 安装 TOAD 并能够连接到 Oracle 数据库。

在 BIDS 中,我可以成功测试连接,甚至可以预览它,但是当我尝试在 DataSource 任务(即 Oracle 连接)上执行包时失败。

非常令人沮丧,我很感激这方面的任何帮助。

完整错误如下:

[OLE DB 源 [1]] 错误:SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。对连接管理器“LICS”的 AcquireConnection 方法调用失败,错误代码为 0xC0202009。在此之前可能会发布错误消息,其中包含有关 AcquireConnection 方法调用失败原因的更多信息。

[SSIS.Pipeline] 错误:组件“OLE DB 源”(1) 验证失败并返回错误代码 0xC020801C。

谢谢,

KS

0 投票
2 回答
2818 浏览

sql - 将 oracle 数据库作为 ADO.NET 模型添加到 Visual Studio

我正在遵循本指南:

http://download.oracle.com/oll/obe/EntityFrameworkOBE/EntityFrameworkOBE.htm

我有 Visual Studio 2012、外部 Oracle 数据库、Oracle 数据访问组件 (ODAC)。

现在我正在尝试添加我的数据库,它首先要求我建立连接,但没有地方可以输入我的外部地址。

在此处输入图像描述

有下拉选择数据源名称,但它是空的。所以基本上,我可以在哪里输入我的外部 ip 到 oracle DB,例如:62.44.121.211

0 投票
1 回答
853 浏览

c# - C# 连接到 oracle 错误 - “提供程序与 Oracle 客户端的版本不兼容”

我正在本地使用 Visual Studio 2012 Oracle 11g R2 客户端 32 位测试与我的 oracle 数据库的连接 Oracle 11g R2 客户端 64 位服务器 ODAC 11.2.0.320 32 位

当我在本地建立连接时,我能够获取要从数据库返回的信息。当我在服务器上发布它时,我不断收到“提供程序与 Oracle 客户端的版本不兼容”。我是否需要安装 64 位 ODAC 并从那里使用该 Oracle.DataAccess.dll?

谢谢