问题标签 [oracle.manageddataaccess]

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 投票
4 回答
1823 浏览

c# - 如何使用 OracleCommand C# 执行不同的多条 SQL 语句

我正在尝试使用 OracleCommand 执行不同的 SQL 语句。

我收到以下异常。

ORA-00933: SQL 命令未正确结束

当我在 BEGIN、END 块中包含多个语句时,我得到以下异常。

ORA-06550:第 2 行,第 1 列:PLS-00103:在预期以下情况之一时遇到符号“DROP”:

(开始 case 声明退出 goto if loop mod null pragma raise return select update while with << continue close current delete fetch lock insert open rollback savepoint set sql execute commit forall merge pipe purge json_exists json_value json_query json_object json_array

0 投票
1 回答
636 浏览

c# - DataReader 为数据库表浮点列返回不正确的 .net 数据类型

我在 Oracle SQL Developer 中有 1 个表,其中包含 1 column as FloatData readerhave 应该Decimal for oracle float datatype按照此处给出的表格返回:https ://docs.microsoft.com/en-us/dotnet/framework/data/adonet/oracle-data-type-mappings

但问题是 datareader 返回double as datatype如下Float Column所示:在此处输入图像描述

但问题是 datareader 返回 double 作为数据类型,NREAL as Float并且NFLOAT1 as float令人惊讶的是 datareader 返回Decimal for both the column如下所示:

在此处输入图像描述

代码 :

我正在使用:Oracle.ManagedDataAccess.Client

这是内部的错误Oracle.ManagedDataAccess.Client library还是我做错了什么?

更新:根据评论我想提一点:

虽然我可能参考了不适用于我正在使用的 oracle 库的不同源文档,但我仍然为我的其他 2 列(即 NREAL 和 NFLOAT1)获取十进制数据类型,那么为什么这种行为不一致?

0 投票
2 回答
7622 浏览

c# - 如何将列表对象从 C# 传递到 Oracle 存储过程?

我正在尝试将一个列表对象从我的 C# WebService 方法发送到我在 Oracle 中的存储过程。

在这里发布之前,我已经尝试了所有建议的重复链接。这是我到目前为止所取得的成就:

  • 成功:在 C# 中,我可以将我的列表值从我的 HTML 页面传递到我的 WebService 方法。
  • 成功:在 Oracle 中,我创建了一个表、对象类型、表类型和存储过程来接受列表值。我能够使用匿名块和样本数据对此进行测试。
  • 问题:我无法将我的 C# WebMethod 中的 List 值传递给我的 Oracle 存储过程。

我目前正在使用以下设置:

  • 视觉工作室 2017
  • .NET 框架 4.6.1
  • Oracle.ManagedDataAccess 18.6.0

请记住,Oracle.ManagedDataAccess 18.6.0 的版本不包含OracleDbType.Array旧示例中建议的内容。

结果应该允许我将我的数组对象从我的 WebService WebMethod 传递到我的 Oracle 存储过程,然后循环遍历数组的每个项目以执行插入。

这是我尝试传入的数据的示例。

正在传递的样本数据

0 投票
1 回答
391 浏览

.net - OracleConfiguration.TnsAdmin 不工作?

我为 .Net 下载了 Oracle.ManagedDataAccess.Core 2.19.1。

起初,我尝试了OracleConfiguration.OracleDataSources.Add()并且能够建立连接。

然后,我尝试使用OracleConfiguration.TnsAdmin进行试验,认为如果我可以让它工作,我不必一一添加数据源(我们有很多)。

不幸的是,TnsAdmin 没有工作。我收到此错误: ORA-12154: TNS:could not resolve the connect identifier specified

我是否遗漏了什么或此功能不起作用?

PS我试图找到文档,但没有运气。

0 投票
1 回答
82 浏览

visual-studio-2017 - 如何 - 获取 Oracle.ManagedAccess 驱动程序以使用已安装的 VB.Net 应用程序

我有一个要在 Win10(x64 操作系统)上安装的 32 位应用程序。我所有的 Oracle 功能都在调试器中工作。Oracle.ManagedAccess 驱动程序已在 VS 项目中正确注册,并且应用程序在调试器中按预期工作。但是,当我构建基于 WiX 的安装包并运行已安装的应用程序时,我收到以下错误:

在此处输入图像描述

我在这里想念什么?在上个月使用 ODP.NET 驱动程序“Oracle.DataAcess”的代码之前的 VS2013 化身中,应用程序在安装时运行良好。我不知道还能去哪里拿这个。非常欢迎任何帮助。

0 投票
1 回答
1803 浏览

asp.net-core - 在我的 ASP.NET Core 中使用“Oracle.ManagedDataAccess”.dll 的问题

我开始使用 asp.net 核心开发 RESTful Web 服务。

我使用一个家庭框架来访问 oracle 数据库,这个家庭框架用于我的所有项目中,但这个框架使用 Oracle.ManagedDataAccess dll。

当我想使用框架 .dll 中的方法从我的数据库中获取一些数据时,我收到错误消息:System.TypeLoadException: 'Could not load type' System.Security.Principal.WindowsImpersonationContext' from assembly mscorlib, Version = 4.0. 0.0,文化 = 中立,PublicKeyToken = b77a5c561934e089 '.'

有解决办法吗?

我是 asp.net CORE 的新手,如果我对 ASP.NET Web API 服务做同样的事情,它就可以工作。

我尝试使用 NuGet 安装 Oracle.managedDataAccess 但我遇到了同样的问题

我还尝试使用 Oracle.ManagedDataAccess.Core ==> System.IO.FileLoadException: 无法加载文件或程序集 'Oracle.ManagedDataAccess

无法使用我的 .dll 文件让我感到很遗憾 你有解决方案可以提供给我吗?

提前致谢

0 投票
1 回答
963 浏览

oracle - .net 的 Oracle ManagedDataAccess 驱动程序是否支持所有 Oracle 数据库版本 12c 18c 19c

我想确认最新的 Oracle managedDataAccess 驱动程序支持 Oracle 最新的数据库版本。我无法从 Oracle 文档中找到有关此问题的任何确认。

0 投票
1 回答
116 浏览

c# - 通过 C# / Oracle.ManagedDataAccess 查询 oracle-view 的文本

使用来自 MS System.Data.OracleClient的旧数据提供程序,我能够使用以下代码查询 oracle-view 的文本:

现在有了新的(本机)提供程序Oracle.ManagedDataAccess.Client,这不再可能了。相同的代码(以及任何其他尝试)无异常运行,但结果始终为 String.Empty(非空)。

事实上,该命令已被执行(来自all_views的所有其他列都是可查询的)。只有“文本”保持为空。因此,我担心 oracle-provider 出现错误。

有人知道答案或替代方法吗?提前谢谢。

0 投票
0 回答
782 浏览

oracle - (ORA-00603:ORACLE 服务器会话因致命而终止)在执行 DROP 表查询时随机生成

我正在使用Oracle.ManagedDataAccess针对 .Net Core 的提供程序的最新版本。当我在管理员用户下执行以下 SQL 语句时:

它抛出这个异常:

Oracle.ManagedDataAccess.Client.OracleException:'ORA-00603:ORACLE 服务器会话因致命错误而终止 ORA-00600:内部错误代码,参数:[2032]、[12585499]、[12585499]、[8192]、[219]、 [255]、[0]、[56319]、[]、[]、[]、[]'

这是完整的堆栈跟踪:

Oracle.ManagedDataAccess.Client.OracleException (0x80004005):ORA-00603:ORACLE 服务器会话因致命错误而终止 ORA-00600:内部错误代码,参数:[2032]、[12585499]、[12585499]、[8192]、[219 ], [255], [0], [56319], [], [], [], [] at OracleInternal.ServiceObjects.OracleConnectionImpl.VerifyExecution(Int32& cursorId, Boolean bThrowArrayBindRelatedErrors, SqlStatementType sqlStatementType, Int32 arrayBindCount, OracleException& exceptionForArrayBindDML, Boolean& hasMoreRowsInDB, Boolean bFirstIterationDone) at OracleInternal.ServiceObjects.OracleCommandImpl.ExecuteNonQuery(String commandText, OracleParameterCollection paramColl, CommandType commandType, OracleConnectionImpl connectionImpl, Int32 longFetchSize, Int64 clientInitialLOBFS, OracleDependencyImpl orclDependencyImpl, Int64[]& scnFromExecution,OracleParameterCollection& bindByPositionParamColl, Boolean& bBindParamPresent, OracleException& exceptionForArrayBindDML, OracleConnection connection, OracleLogicalTransaction& oracleLogicalTransaction, Boolean isFromEF) at Oracle.ManagedDataAccess.Client.OracleCommand.ExecuteNonQuery() at System.Data.Common.DbCommand.ExecuteNonQueryAsync(CancellationToken cancelToken)

异常并不总是发生,它是间歇性的......我知道这个异常意味着Oracle提供程序中存在错误。不幸的是,我没有 Oracle 支持。有谁知道为什么我有这个例外?

更新

我能够得到我得到的错误的踪迹。这是链接: https ://gist.github.com/tanbchr/25a81146af2a9f346cc8c44d6555dc4d

0 投票
1 回答
1300 浏览

oracle - Oracle 12.2.0.1 中的 Kerberos 身份验证,带有 KERBEROS5PRE 服务和 Cred Cache OSMSFT

我正在尝试将使用 EntityFW 和 Oracle.ManagedDataAccess 的 Web api 连接到 Oracle 12c (12.2.0.1)

我必须使用带有以下参数的 Kerberos 身份验证

即使我在AUTHENTICATION_SERVICES中有KERBEROS5

我认为使用下面的设置它实际上不起作用

所以我的有效配置就像

我的web.config中嵌入了以下内容

我根本没有经过身份验证(我验证了正在运行的用户并且它是正确的)

堆栈转储

我设法使我组织的大多数工具都在 API 之外工作

  • sqlplus(命令行)
  • Python
  • pycharm的datagrip
  • 电源 BI
  • SSIS
  • ETC..

开始相信以下链接的第一个答案是正确的,但没有书面证明

C# Oracle 托管连接上的 Kerberos

任何帮助表示赞赏