小编典典

将C#连接到Oracle数据库所需的最小客户端资源是多少?

c#

通过在笔记本电脑上下载并安装客户端管理工具和Visual Studio 2008,我已经从C#(Visual Studio
2008)成功连接到Oracle数据库(10g)。

Oracle Client工具的安装占用空间超过200Mb,而且运行时间很长。

有谁知道最小可行的占地面积是多少?我希望这是一个DLL和一个register命令,但是我感觉我需要安装一个oracle home,并设置各种环境变量。

我在代码中使用Oracle.DataAccess。


阅读 315

收藏
2020-05-19

共1个答案

小编典典

您需要一个Oracle Client才能连接到Oracle数据库。最简单的方法是安装Oracle Data Access
Components

为了减少占用空间,我建议如下:

  • 使用框架随附的Microsoft提供程序(Oracle.System.Data.OracleClient)。
  • 下载Oracle Instant Client软件包 -Basic Lite:这是一个(几乎)最低要求的zip文件。我建议版本10.2.0.4,比版本11.1.0.6.0小得多。
  • 将以下文件解压缩到特定的文件夹中:
    • v10:
    • oci.dll
    • orannzsbb10.dll
    • oraociicus10.dll
    • v11:
    • oci.dll
    • orannzsbb11.dll
    • oraociei11.dll
  • 在x86平台上,将Visual Studio 2003的CRT DLL(msvcr71.dll)添加到此文件夹中,因为Oracle伙计们忘记阅读此文件了
  • 将此文件夹添加到PATH环境变量中。
  • 在您的应用程序中使用Easy Connect Naming方法来摆脱臭名昭著的TNSNAMES.ORA配置文件。看起来是这样的:sales-server:1521/sales.us.acme.com

总计约 19Mb (v10)。

如果您不关心在多个应用程序之间共享此文件夹,则可以选择将上述DLL与应用程序二进制文件一起提供,并跳过PATH设置步骤。

如果您绝对需要使用Oracle提供程序(Oracle.DataAccess),则需要:

  • ODP .NET 11.1.0.6.20(据称可与Instant Client一起使用的第一个版本)。
  • 显然,Instant Client 11.1.0.6.0。

请注意,我尚未测试此最新配置…

2020-05-19