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

工具/原料

  • ODAC安装包

步骤1. 下载ODAC安装包

  • 到Oracle官方网站下载ODAC安装包。在网页上找到你要的版本。我下载的是:

    64-bit ODAC 11.2 Release 6 (11.2.0.4.0) Xcopy for Windows x64

    下载下来的安装包名为:

    ODAC112040Xcopy_64bit.zip

    END

步骤2. 解压缩

  • 解压缩这个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

    END

步骤3. 安装ODAC包

  • 在cmd中运行install.bat批处理文件:输入"install.bat all D:\OracleClient 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也装上。

    END

步骤4. 设置环境变量

  1. 1

    ORACLE_HOME=D:\OracleClient

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

  2. 2

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

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

    %ORACLE_HOME%;%ORACLE_HOME%\bin;)

    END

步骤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)

    )

    )

    END

卸载ODAC的方法

  1.  

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

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

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

    uninstall.bat all ODAC

    或者

    uninstall.bat all D:\OracleClient

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

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

    uninstall.bat oledb ODAC

    或者

    uninstall.bat oledb D:\OracleClient

  2. 2

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

    END

注意事项

  • 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. .NET轻量级DBHelpers数据访问组件

    一.摘要 一说到ADO.NET大家可能立刻想到的就是增.删.改.查(CRUD)操作,然后再接就想到项目中的SQLHelper.没错本课分享课阿笨给大家带来的是来源于github上开源的DAO数据库访问 ...

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

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

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

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

  7. (转)Delphi7中QuickReport组件(QReport报表)安装方法及重要属性

    Delphi7中没有办法直接使用QuickReport组件,因为在Delphi7中没有将QuickReport组件包作为默认组件打包,如果要使用此组件,需要先安装一下.     打开delphi7,点 ...

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

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

  9. Microsoft 数据访问组件 (MDAC) 的版本历史记录

    http://support.microsoft.com/kb/231943/zh-cn http://support.microsoft.com/kb/301202

随机推荐

  1. JavaScript 三级联动

    附件连接下载地址:http://files.cnblogs.com/files/CaktyRiven/js.zip <!DOCTYPE html> <html lang=" ...

  2. SQL SERVER 查询表或字段在哪里使用过

    select b.name from dbo.syscomments a, dbo.sysobjects b where a.id=b.id and b.xtype='p' and a.text li ...

  3. PHP 接入芝麻信用 注意 事项

    芝麻官方下载的SDK,跑不起来,百度搜索一番也没有发现太多的文章 ,只有一个CSDN博客写的一篇文章,比较有参考价值 详细查阅文档+几天测试整理以下几点注意事项: 接入芝麻API接口,应该分2步: 第 ...

  4. equals(),hashcode(),克隆学习心得

    equals(),hashcode(),克隆学习心得 其实在开发时候,很少去重写equals(),hashCode()方法,但是有些时候业务需要还是要重写. 注意: 重写equals()方法一定要重写 ...

  5. PHP中GBK和UTF8乱码解决方案

    我用的appserv-win32-2.5.10做的环境,装这个包的时候用默认的utf8编码.在写数据库连接文件时,写成: $conn = mysql_connect("$host" ...

  6. python2.x与3.x差别

    数字常量: 八进制 十六进制 二进制 2:0177 0o177   0x9ff 0b101010 3:0o177 0x9ff 0b101010 多种字符串: 2:一般字符串,Unicode字符串 3: ...

  7. 实验五(简单嵌入式WEB服务器实验)问题总结

    实验五问题总结 问题链接:<信息安全系统设计基础>实验五实验报告 虽然将07_httpd文件中全部拷贝进了bc中,文件夹中拥有Makefile文件,但是还是无法通过make得到该文件夹中c ...

  8. POJ2965

    #include <stdio.h> char map[4][4]; int map1[4][4]; int map2[4][4]; int num[16]; int min=1000,n ...

  9. RDLC 设置标题每页显示

  10. 使用Qt5.7.0 VS2015版本生成兼容XP的可执行程序 good(从VS2012 update1开始支持xp和c++11)

    一.直接使用VS2012/VS2013/VS2015生成XP兼容的可执行程序 Visual Studio刚发布时没打补丁,称为RTM版,之后会陆续发布补丁,进行bug修复和功能增强.VS2010及之前 ...