Oracle数据访问组件ODAC(Oracle Data Access Components)顾名思义就是用来访问Oracle数据库的小程序。我们可以编程调用这些组件来实现在没有安装Oracle数据库软件的电脑上完成对Oracle数据库的访问

工具/原料:

安装包

步骤1. 下载ODAC安装包:

解压缩这个zip包,把里面的文件都解压到一个文件夹里,我是解压到D:\ODAC112040Xcopy_64bit,然后打开cmd,进入到这个文件夹。

这个文件夹里有8个子文件夹,分别是:

instantclient_11_2:这是Oracle客户端,所有组件的运行都依赖于这个客户端;

oledb:这是OLE DB组件

asp.net:这是ASP.NET2组件

asp.net4:这是ASP.NET4组件

odp.net4:这是.NET4组件

odp.net20:这是.NET2组件

oramts:这是Oracle的MTS服务

network:这个文件夹不用管,它是用来存放tnsnames.ora文件的,要安装后才能用。

这里我们需要搞清楚这些组件之间的依赖关系。

instantclient_11_2是最基础的

oledb依赖于instantclient_11_2

asp.net依赖于instantclient_11_2和odp.net20

asp.net4依赖于instantclient_11_2和odp.net4

odp.net4依赖于instantclient_11_2

odp.net20依赖于instantclient_11_2

oramts依赖于instantclient_11_2

步骤3. 安装ODAC包

  • 第一个参数:all。all代表安装ODAC112040Xcopy_64bit文件夹下所有的组件和客户端。如果你不需要这么多组件,只用到其中一个,比如只用到了OLE DB组件,就可以像下面这样只安装客户端和这一个OLE DB组件:

    install.bat oledb D:\OracleClient ODAC

  • 第二个参数:D:\OracleClient。这是安装路径,根据自己的实际情况指定,路径中尽量不要有空格和圆括号。

  • 第三个参数:ODAC。这个叫ORACLE HOME NAME,这个参数也可以自己随便指定一个字符串,不一定非得是"ODAC"。这个参数是用来写入注册表的。比如,上面这条语句执行后,会在注册表的以下位置写入:

    HKLM\Software\Oracle\KEY_ODAC

    这"KEY_"后面的ODAC就是你在参数中传入的那个"ODAC"

  • 第四个参数。一般只用前三个参数就够了,在安装组件的时候会自动把它依赖的组件都安装上,但如果你只想安装指定的组件,不想装它所依赖的组件,这时才会用到第四个参数。比如:当你安装asp.net时,如果只用前三个参数,会自动把它所依赖的odp.net20和instantclient_11_2也安装上,但如果你再传入第四个参数"false",如下:

    install.bat asp.net D:\OracleClient ODAC false

    这时就只会安装asp.net,而不会把odp.net20和instantclient_11_2也装上。

    步骤4. 设置环境变量

    ORACLE_HOME=D:\OracleClient

    (添加一个环境变量ORACLE_HOME,其值为你的安装路径,比如我这里就是D:\OracleClient)

    2

    PATH=%ORACLE_HOME%;%ORACLE_HOME%\bin;

    (在PATH环境变量中添加下面两个路径,用分号隔开:

    %ORACLE_HOME%;%ORACLE_HOME%\bin;)

    步骤5. 根据需要配置tnsnames.ora文件

    如果要用组件访问Oracle数据库,那么就要根据需要配置tnsnames.ora文件,并存放于%ORACLE_HOME%\network\admin目录下。

    我的tnsnames.ora文件格式如下,供参考:

    ORA =

    (DESCRIPTION =

    (ADDRESS_LIST =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.26.231)(PORT = 1521))

    )

    (CONNECT_DATA =

    (SERVICE_NAME = ora)

    )

    )

    卸载ODAC的方法

    用cmd进入到ODAC的安装路径下,然后运行该路径下的uninstall.bat批处理文件。这里也是要注意参数的运用。

    ================================================

    若要卸载掉所有组件,可以这样:

    uninstall.bat all ODAC

    或者

    uninstall.bat all D:\OracleClient

    ================================================

    若要卸载掉某一个指定的组件,可以这样:

    uninstall.bat oledb ODAC

    或者

    uninstall.bat oledb D:\OracleClient

    2

    手动删除掉安装目录,并把之前添加的环境变量也一并删除即可

    注意事项

     
    • install.bat和uninstall.bat两个批处理文件会在安装目录下分别产生install.log和uninstall.log两个日志文件。

Oracle数据访问组件ODAC的安装方法:的更多相关文章

  1. Oracle数据访问组件ODAC的安装方法

    Oracle数据访问组件ODAC(Oracle Data Access Components)顾名思义就是用来访问Oracle数据库的小程序.我们可以编程调用这些组件来实现在没有安装Oracle数据库 ...

  2. .NET安装和配置Oracle数据访问组件(ODAC)

    Many ASP.NET applications access Oracle database for the data source. Oracle supports the .NET with ...

  3. 超轻量级高性能ORM数据访问组件Deft,比dapper快20%以上

    超轻量级高性能ORM数据访问组件Deft,比dapper快20%以上 阅读目录 Deft简介 Deft 核心类介绍 Deft 3分钟即可上手使用 其他可选的配置参数 性能测试 Demo代码下载 回到顶 ...

  4. 测试 ClownFish、CYQ、Entity Framework、Moon、MySoft、NHibernate、PDF、XCode数据访问组件性能

    下期预告: 由于很多园友反馈,有的组件不应该缺席.测试复杂度不够.测试还缺乏一定的公平. 因此考虑在下一个版本中,确保在更加公平的前提下进行更高复杂度的测试 . 同时将分为2组测试,纯SQL组件及纯O ...

  5. Agile.Net 组件式开发平台 - 数据访问组件

    Agile.DataAccess.dll 文件为系统平台数据访问支持库,基于FluentData扩展重写,提供高效的性能与风格简洁的API,支持多种主流数据库访问. 当前市面上的 ORM 框架,如 E ...

  6. 水果项目第2集-建立数据库->编写数据访问基础类->实现类的方法->调试通过

    看来写博客对懒人也有好处.监督自己的好处. 今天一打开电脑,就想继续写了. 今天就开始动手做了. 数据库建立,编写访问数据库代码,实现各个类的方法,调试这些方法. 这些基础的代码写完后,就可以写逻辑代 ...

  7. .net(C#)访问Oracle数据库的几种免安装组件的对比

    Oracle 数据存取组件(ODAC) 库为Borland Delphi,C++ Builder 以及 Kylix提供了一些非可视化的组件.它们用来存取Oracle关系数据库系统.与BDE类似, OD ...

  8. Delphi连接Oracle控件ODAC的安装及使用(轉載)

     Delphi连接Oracle控件ODAC的安装及使用 2010-08-13 01:13:37 标签:Oracle Delphi 控件 休闲 ODAC 原创作品,允许转载,转载时请务必以超链接形式标明 ...

  9. Springboot数据访问,棒棒哒!

    Springboot对数据访问部分提供了非常强大的集成,支持mysql,oracle等传统数据库的同时,也支持Redis,MongoDB等非关系型数据库,极大的简化了DAO的代码,尤其是Spring ...

随机推荐

  1. Spring注入JPA+JPA事务管理

    本例实现的是Spring注入JPA 和 使用JPA事务管理.JPA是sun公司开发的一项新的规范标准.在本质上来说,JPA可以看作是Hibernate的一个子集:然而从功能上来说,Hibernate是 ...

  2. iOS开发 QQ粘性动画效果

    QQ(iOS)客户端的粘性动画效果 时间 2016-02-17 16:50:00  博客园精华区 原文  http://www.cnblogs.com/ziyi--caolu/p/5195615.ht ...

  3. nginx下搭建 Yii框架

    因为启用了rewrite,导致css,js,images等静态文件也定向到index.php 我不得不重定向静态文件的路径 仅供参考: server { listen 80; server_name ...

  4. quad 和 plane 区别是什么?

    Quad就是两个三角形组成四边形,Plane会有很多三角形,哦也 貌似Quad拖上去后看不见,很薄的感觉

  5. Arduino101学习笔记(六)—— 高级IO

    1.位移输出函数(8位) 输入value数据后Arduino会自动把数据移动分配到8个并行输出端. 其中dataPin为连接DS的引脚号, clockPin为连接SH_CP的引脚号, bitOrder ...

  6. 将回车键转tab键

    //功能:将回车键转tab键$(function () {$('input:text:first').focus();var $enter = $("input[type=text],but ...

  7. linux下的vim使用教程

    命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令. 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim ...

  8. 【VirtualBox】VirtualBox的桥接网络模式,为啥网络不稳定?

    网桥模式访问外网非常慢,经常卡死,ping时断时续 七搞八搞,反复重启了几次 TMD  就好了,也不知道什么情况,VirtualBox还是不太好使啊..... 网桥模式 设置 如下: 参考资料: ht ...

  9. MySQL常用SQL/函数汇总(持续更新)

    自动生成ROWNUN SELECT (@rowNO := @rowNo+1) AS rowno,a.uuid FROM (SELECT * FROM h_log_proc) a,(SELECT @ro ...

  10. 跨代的对决 英特尔i7-6700HQ对比i7-4720HQ性能测试

    http://itianti.sinaapp.com/index.php/cpu 跨代的对决 英特尔i7-6700HQ对比i7-4720HQ性能测试 2015-10-13 19:46:31 来源:电脑 ...