Oracle Instance Client Light (odac 11) 和字符集

发布于 2024-09-29 03:38:59 字数 810 浏览 3 评论 0原文

我正在尝试连接到 oracle db,而无需在计算机上完全安装 oracle 客户端。 我发现这篇文章很有帮助使用新的 ODP.Net 通过简单的部署从 C# 访问 Oracle但是当我尝试它时,我在下一个异常上失败了:

[Oracle.DataAccess.Client.OracleException ORA-12737: Instant Client Light: unsupported server character set %s at Oracle.DataAccess.Client Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode、OracleConnection conn、IntPtr opsErrCtx、OpoSqlValCtx* pOpoSqlValCtx、对象 src、字符串过程、布尔 bCheck)

在 Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode、OracleConnection conn、IntPtr opsErrCtx、对象 s RC) ...

我试图用谷歌搜索它,但除了“不要使用此字符集”建议之外什么也没找到。

我偶尔会使用 NLS_LANG“american_america.US8PC437”,但它可以是不同的(客户端环境)字符集。

您知道如何使用字符集资源扩展轻量级实例客户端吗?

谢谢!

I am trying to connect to oracle db without full installation of oracle client done on the machine.
I found this helpfull post Using the new ODP.Net to access Oracle from C# with simple deployment but when I try it, I am failed on the next exception:

[Oracle.DataAccess.Client.OracleException ORA-12737: Instant Client Light: unsupported server character set %s at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure, Boolean bCheck)

at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, Object src)
...

I tried to Google it up, but find nothing except "Do not use this character set" suggestions.

I occasionally I am working with NLS_LANG "american_america.US8PC437", but it can be different (client environment) character set.

Do you have any idea how can I extend light instance client with character sets resources?

Thank you!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

人│生佛魔见 2024-10-06 03:38:59

我遇到了同样的问题,谷歌说解决方案是“some_big_oracle_package”安装,但我想把它放在一边。因此,只需解压 ODAC112012Xcopy.zip 32 位(仅限 xcopy 版本)中的所有 dll 文件即可。它有效!所以我必须找到神秘的 dll,将其推向新的高度。一个&唯一的是

oraociei11.dll

在我的工作便携式解决方案目录中,我有 .exe 文件和 4 个 dll:

  • oci.dll、
  • Oracle.DataAccess.dll(版本
    2.112.1.2),
  • OraOps11w.dll
  • oraociei11.dll

这个东西适用于 Win7 x86 & x64和WinXP x86(所有系统都没有安装Oracle或其他东西,纯复制粘贴)。
请注意,oraociei11.dll 的大小为 120MB!压缩后~40MB

告诉我它是否适合你

I had the same problem and google says the solution is 'some_big_oracle_package' installation, but I want to keep this away. So simply unpacked all dll files from ODAC112012Xcopy.zip 32bit (xcopy version ONLY). And it works! So I had to found the mysterious dll that pushed it to the next level. The one & only is

oraociei11.dll

On my working-portable solution catalog I have .exe file and 4 dlls:

  • oci.dll,
  • Oracle.DataAccess.dll (version
    2.112.1.2),
  • OraOps11w.dll
  • oraociei11.dll

This stuff works on Win7 x86 & x64 and WinXP x86 (all the systems don't have Oracle or sth installed, pure copy & paste).
Notice that oraociei11.dll weighs 120MB! After compression ~40MB

Tell me if it works for you

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文