问题标签 [odp]

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 回答
96 浏览

svg - 打开文档格式:drawooo:enhanced-path 属性中“G”命令的含义

我正在使用一些自定义格式编写从 .odp 到 .html 的转换器。我将元素表示为其中的路径。一切正常,直到有“drawooo:enhanced-path”属性,例如: <draw:enhanced-geometry draw:mirror-horizontal="false" draw:mirror-vertical="false" draw:text-areas="?f5 ?f5 ?f6 ?f7" svg:viewBox="0 0 0 0" draw:type="ooxml-roundRect" draw:modifiers="16667" draw:enhanced-path="M 0 ?f2 L ?f3 0 L ?f11 ?f4 L ?f2 ?f10 Z N" drawooo:enhanced-path="M 0 ?f2 G ?f2 ?f2 ?f12 ?f13 L ?f3 0 G ?f2 ?f2 ?f14 ?f15 L ?f11 ?f4 G ?f2 ?f2 ?f16 ?f17 L ?f2 ?f10 G ?f2 ?f2 ?f18 ?f19 Z N">

导致问题的是“G”命令,它在 svg 路径的“d”属性中不受支持。

当我通过 libreoffice 命令将演示文稿转换为 .svg 时,它产生了以下元素: <path fill="rgb(0,0,0)" stroke="none" d="M 2468,2780 L 2468,2780 2469,2745 2472,2710 2476,2675 2483,2641 2491,2607 2501,2573 2513,2540 2526,2507 2541,2476 2558,2445 2576,2415 2596,2386 2617,2358 2640,2332 2664,2306 2690,2282 2716,2259 2744,2238 2773,2218 2803,2200 2834,2183 2865,2168 2898,2155 2931,2143 2965,2133 2999,2125 3033,2118 3068,2114 3103,2111 3138,2110 7934,2110 7934,2110 7969,2111 8004,2114 8039,2118 8073,2125 8107,2133 8141,2143 8174,2155 8207,2168 8238,2183 8269,2200 8299,2218 8328,2238 8356,2259 8382,2282 8408,2306 8432,2332 8455,2358 8476,2386 8496,2415 8514,2445 8531,2476 8546,2507 8559,2540 8571,2573 8581,2607 8589,2641 8596,2675 8600,2710 8603,2745 8604,2780 8605,5460 8605,5460 8604,5495 8601,5530 8597,5565 8590,5599 8582,5633 8572,5667 8560,5700 8547,5733 8532,5764 8515,5795 8497,5825 8477,5854 8456,5882 8433,5908 8409,5934 8383,5958 8357,5981 8329,6002 8300,6022 8270,6040 8239,6057 8208,6072 8175,6085 8142,6097 8108,6107 8074,6115 8040,6122 8005,6126 7970,6129 7935,6130 3138,6131 3138,6131 3103,6130 3068,6127 3033,6123 2999,6116 2965,6108 2931,6098 2898,6086 2865,6073 2834,6058 2803,6041 2773,6023 2744,6003 2716,5982 2690,5959 2664,5935 2640,5909 2617,5883 2596,5855 2576,5826 2558,5796 2541,5765 2526,5734 2513,5701 2501,5668 2491,5634 2483,5600 2476,5566 2472,5531 2469,5496 2468,5461 2468,2780 Z M 2468,2110 L 2468,2110 Z M 8605,6131 L 8605,6131 Z"/>

只是为了说明忽略“G”如何影响最终形状,请参见比较

我想做类似的转换,但我在互联网上的任何地方都找不到“G”命令的任何规范。

您能否指出它的一些规范,或者更好的是,指向一些已经进行某种转换的库?

0 投票
0 回答
266 浏览

c# - Oracle Data Provider - 调用 ExecuteReader 以获取 OUT 参数

我正在重构现有应用程序以将 Oracle 数据提供程序从 OLE DB 更改为托管 Oracle 数据提供程序 (ODP)。

我需要调用以下存储过程,它有几个输入参数和几个输出参数,它们基本上是 VARCHAR2 的 TABLE 类型

where TYPE g_tMarkCd IS TABLE OF my_table.my_varchar_column%TYPE(和其他类型类似)。

不幸的是,该过程不返回参考光标。

OLE 数据库:

现有代码设置了一个 OleDbCommand,CommandType 为 Text,CommandText 设置为

然后通过将四个输入 OleDbParameter 添加到 OleDbCommand 对象(但添加任何 OUT 参数)来调用 proc,然后调用 OleDbCommand ExecuteReader() 方法。一切都适用于 OLE DB。生成的 IDataReader 具有每个输出参数的字段。

耗氧量:

ODP 不支持 SQL 语法(因此我将 OracleCommand CommandText 设置为 proc 的名称,并将 CommandType 设置为 StoredProcedure)。

有没有办法以与 OLE DB 相同的方式调用 OracleCommand ExecuteReader() 方法的方式设置 C# 客户端代码?

(如果我必须将 OUT 变量显式设置为命令中的参数,那么系统将需要进行重大重写,如果可能的话,我希望避免这种情况。)

编辑:(不推荐使用的)OLEDB 代码看起来像

0 投票
0 回答
2502 浏览

c# - 使用 C# (ODP.Net) 配置 Oracle 网络加密被忽略

我想使用 ODP.Net 和 C# 并使用加密连接连接到 Oracle DB。目前目标数据库设置为接受加密和未加密的连接。不幸的是,即使配置为只接受加密的连接,我的单元测试也总是连接到没有加密的数据库。

我的代码如下所示:

我的 app.config 中有以下配置

我还检查了 bapp.config 中的其他条目是否按照 Oracle 安装指南的建议进行设置(请参阅安装指南

在我的 sqlnet.ora 中,我有以下条目:

根据我的跟踪日志,这个文件和它的配置值被读取。

据我所知,我尽一切努力强制加密连接,但它仍然没有加密连接。但是也没有错误,但是单元测试只是使用了未加密的连接,而忽略了我的配置。

有两件事不是标准的:a) 由于网络限制,我不允许从在线源安装所需的 NuGet-Packages。我从 Oracle 下载了它们,然后只是从文件系统安装了它们,但仍然使用 NuGet 包管理器 b) 安装指南提到了以下必须修改的条目:

当我在单元测试中提供硬编码的连接字符串时,假设不需要它,我没有改变这个字符串。

有趣的是,sqlnet.ora 中的配置值似乎都没有经过验证。如果我配置一个不存在的密码(例如 BlaBla 而不是 AES256),仍然没有错误。此外,我尝试在 sqlnet.ora 中使用不同的拼写(大写而不是小写),因为我发现的每个样本似乎都使用其他拼写。

任何想法我可以进一步检查将不胜感激:-)

0 投票
2 回答
809 浏览

ios - 使用 WebView 打开 .odp、.odt、.ods 文件

我正在使用UIWebView查看 .pdf、.txt、.xls、.ppt 文件。我使用 webViewloadRequest方法来查看这些文件及其工作正常。我需要查看 .odp、.odt、.ods 等文件,但它在 UIWebView 中只显示空白页。是否有任何有效的方法可以使用 UIWebView 或任何直接的方法来查看这些文件?

0 投票
0 回答
234 浏览

c# - odp net conex 失败错误 c#visual studio 2017 oracle 11

我正面临这个问题。希望有人可以帮助我。该数据库具有以下内容:

另一方面,我有最新的 Visual Studio Enterprise 2017 - 版本 15.9.7

当我做这个简单的代码时: 好的

这是图像的代码:

另外,当我尝试这种方式时。

测试conex-ok

但是,当我尝试连接新的 ODP 时。它失败。

ODP-失败

这是图像的代码:

另外,如果我尝试使用 Visual Studio 向导,结果是一样的。

测试 conex-FAILS

为了提供额外信息,两个 DLL 的版本是:

根据 dotPeek

对于nuget的另一个:

0 投票
0 回答
142 浏览

c# - Oracle - 一些波兰语字符不显示

我有一个使用 Oracle 数据提供程序的 Windows 窗体应用程序,oracle 版本 12c。在 Windows 7 上,所有波兰字符都可以,但在 Windows 10 上迁移后,一些字符可以,但其他一些字符显示为奇怪的标志,例如

因穆伊什卡_ _

除了

通知ą ca

显示不好的字符:ą、ś、ź

在 C# 中,我设置了环境:

我在互联网上找到的唯一答案是已注释的参数,但不幸的是它不起作用。

0 投票
0 回答
29 浏览

c# - 开始使用 ODP for .NET 时遇到问题

我正在尝试编写一个 .Net 4.7.2 控制台应用程序,该应用程序使用 VS 2019 中的托管驱动程序与 Oracle 数据库连接。我已通过 PacketManager 将 Oracle.ManagedDataAccess v19.6.0 包添加到我的项目中。按照 Oracle Data Provider for .Net Developers 指南的简单示例,打开连接时出现异常,“输入字符串的格式不正确。”。这是我的代码,任何帮助将不胜感激。

0 投票
1 回答
356 浏览

c# - 连接关闭,应用程序挂起,ODP.Net 4.122.19.1 (19) 和 Oracle 数据库 11.2.0.4 设置了 SQLNET.EXPIRE_TIME

注意:对不起,这不是一个真正的问题,而是一个可能对遇到同样问题的人有用的信息。

我们的应用程序遇到了一个大问题,因为 Oracle 支持似乎没有提到一个错误。

我不会打开一个案例,因为现在问题是已知的,我们将解决它,但花了很长时间才明白这一点,我在这里分享信息,可能这会节省一天的时间。

4.122.19.1 ODP.Net 不响应 DCD 数据包,几分钟后连接被服务器视为 DEAD。应用程序挂起等待池中的新连接。

这发生在连接到 11.2.0.4 Oracle 服务器并设置了 SQLNET.EXPIRE_TIME。

应用程序永远不会停止,应该杀死 W3WP.exe

https://www.oracle.com/technetwork/database/enterprise-edition/oraclenetdcd-2179641.pdf

Debugdiag 分析可能会显示以下结果。

0 投票
1 回答
98 浏览

ipsec - IPsec anti-replay服务,sequence no小于window中的lower sequence,丢包?

考虑一个例子,我对 IPsec 反重放窗口服务还有一个查询。我的窗口大小为 64,窗口大小范围为 1 到 64。考虑到接收器接收到的所有序列号,除了 seq no 3,后来收到 seq no 68,顶部窗口移动到 4 位,底部窗口移动到 4 位。Top= 68 Bottom= 5 所以现在在这种情况下,第一个问题是:

  1. 窗口是否会移位 4 位?我想是的。需要相同的输入吗?
  2. 如果是,则未收到(未标记)的 seq no 3 索引会发生什么。稍后如果 seq no 3 进入,那么 seq no < bottom 所以数据包应该被丢弃,对吗?有人可以分享他们的意见吗?

注意:我在这里使用 odp-dpdk 作为数据引擎,linux 在这里没有发挥作用。

0 投票
1 回答
765 浏览

c# - Oracle.ManagedDataAccess.Client.OracleException (0x80004005):连接请求超时

我已经为此苦苦挣扎了好几天。代码在我的开发机器上成功运行并连接到数据库,但是当我将它部署到服务器时,出现此错误。我正在使用 Oracle.ManagedDataAccess。这是我到目前为止所尝试的。

检查是32位还是64位。原来是 64bit Checked TNS Names 文件。这是正确的检查两台机器都在同一个网络上。他们是。尝试创建一个连接到数据库的精简控制台应用程序。控制台应用程序在两台机器上都运行。主应用程序无法在服务器上运行。尝试创建一个连接到数据库的精简 Web 表单应用程序。Web 表单应用程序重现了该错误,排除了主应用程序本身的问题。尝试将超时值加倍。尝试将超时值减少到 1 秒。尝试关闭连接池。尝试增加连接池大小。尝试赋予 IIS_IUSR 对 Oracle 主目录的完全权限。尝试重新启动服务器。试过了<setting name="SQLNET.AUTHENTICATION_SERVICES" value="null" />

这是小型 Web 应用程序的代码。

异常文字如下