Oracle数据访问组件 (ODAC)  全称:Oracle Data Access Components

优点:由于微软在.net framework4中会将System.Data.OracleClient.dll deprecated,而且就访问效率和速度而言,System.Data.OracleClient.dll与Oracle.DataAccess.dll相比,微软的确实没有oracle提供的类库有优势,所以我放弃了使用多年的 System.Data.OracleClient.dll,取而代之的是odp.net。

1. ODAC的安装

服务器端:0racle10g,11g 都行

客户端:Oracle11g,我下载的是ODAC 11.2 Release 5 and Oracle Developer Tools for Visual Studio (11.2.0.3.20),oracle10g的可以安装,但是里面缺少自定义类型的对应对象,且只支持vs2003和vs2005,所以我选择用的是oracle11g的版本ODAC 11.2 Release 5 and Oracle Developer Tools for Visual Studio (11.2.0.3.20),下载地址http://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html

2.环境变量的设置

(1)新建ORACLE_HOME:ODAC的安装目录(类似~app\Administrator\product\ .1.0\client_1,我这里的安装目录是G:\app\Administrator\product\11.2.0\client_2)

注:本机装Oracle服务端此项为空,否则监听服务无法启动、PLSQL Developer连接异常。

(2)新建LD_LIBRARY_PATH:%ORACLE_HOME%   (If Linux)

(3)新建TNS_ADMIN: %ORACLE_HOME%(这里是监听设置,应该是tnsnames.ora的目录,我设置的是G:\oracle\product\10.2.0\db_1\NETWORK\ADMIN,当然也可以将配置好的tnsnames.ora文件拷贝到%ORACLE_HOME%目录下)

(4)在PATH的最前面追加:%ORACLE_HOME%(安装ODAC后自动追加)

(5)如果PLSQL Developer无法连接Oracle,则设置PLSQL Developer的Oracle主目录名:

工具—>首选项

3.vs2010中建立与oracle的连接

在vs的菜单栏中点击视图—>服务器资源管理器,在服务器资源管理器面板中选择数据连接,右键添加连接

点击数据源的更改按钮,在弹出的更改数据源框中选择Oracle数据库,数据提供程序,选择Oracle Date Provider for.NET 。

在数据源名称的下拉列表框中选择数据源名称,这个的名称都是在tnsnames.ora配置好的,输入用户名密码,点击确定即可建立vs与oracle的连接。

最后可以使用这里的工具对oracle数据库进行操作,包括复杂的自定义对象类建立具体操作见《pro odp.net for oracle database11g》第14章ODT.NET Tool Basics

备注:环境变量设置

1.将OracleClient和OracleClient/bin添加到Path环境变量

2.添加TNS_ADMIN环境变量指daotnsnames.ora所在路径

.Net+EF连接Oracle 10、11 开发,ODAC安装配置与使用详解的更多相关文章

  1. win7 PLSQL Developer 10/11/12 连接 Oracle 10/11/12 x64位数据库配置详解(与32位一样,只要注意对应Oracle Instant Client版本) tns 错误和 nls错误

    环境win7 x64 PLSQL Developer 10 与 11 Oracle Instant Client 10 与 12 参考http://blog.csdn.net/chen_zw/arti ...

  2. 升级10.11.6后CocoaPods的坑,之前10.11.4已经安装好的,居然没了Failed to locate Homebrew!

    升级10.11.6后CocoaPods的坑,之前10.11.4已经安装好的,居然没了,用命令 sudo gem install cocoapod 装不上,换 sudo gem install -n/u ...

  3. [ 转载 ] Java开发中的23种设计模式详解(转)

    Java开发中的23种设计模式详解(转)   设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类 ...

  4. oracle 重置序列从指定数字开始的方法详解

    原文 oracle 重置序列从指定数字开始的方法详解 重置oracle序列从指定数字开始 declare n ); v_startnum ):;--从多少开始 v_step ):;--步进 tsql ...

  5. 最锋利的Visual Studio Web开发工具扩展:Web Essentials详解

    原文:最锋利的Visual Studio Web开发工具扩展:Web Essentials详解 Web Essentials是目前为止见过的最好用的VS扩展工具了,具体功能请待我一一道来. 首先,从E ...

  6. Windows7 x64 跨平台开发环境安装配置

    ======================================================================= Windows7 x64 跨平台开发环境安装配置 201 ...

  7. 全网最详细的PLSQL Developer + Oracle client的客户端 或者 PLSQL Developer + Oracle server服务端的下载与安装过程(图文详解)

    不多说,直接上干货! 环境说明: 本地没有安装Oracle服务端,oracle服务端64位,是远程连接,因此本地配置PLSQL Developer64位. Oracle database使用在本机部署 ...

  8. 使用Navicat或者其他数据库工具连接阿里云EDS(数据库服务器)实例过程详解

    使用Navicat或者其他数据库工具连接阿里云EDS(数据库服务器)实例过程详解 背景:这几天从阿里云上面购买了云服务器,最垃圾的那种,还送oss和EDS数据库服务器,只不过EDS数据库服务器只有一个 ...

  9. Eclipse进行C/C++开发——Eclipse+CDT+MinGW的配置与使用详解

    http://hi.baidu.com/ltb6w/item/3a51f11926fda60ce75c361d Eclipse进行C/C++开发——Eclipse+CDT+MinGW的配置与使用详解 ...

随机推荐

  1. JS高级程序设计学习笔记之Date类型

    日期对象的创建:var now =new Date(),不传递参数时,对象自动获取当前时间.(若要创建特定日期与时间的对象,必须传入该日期距离1970/1/1零点的毫秒数). Date.parse() ...

  2. (转)Javascript 面向对象编程(一):封装(作者:阮一峰)

    Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象.但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类). 那么,如果 ...

  3. iOS的Bundle资源束制作

    在静态库的制作中,很多时候我们的静态库也是带着文件,图片和多媒体资源的. 若只是直接加入到项目中也是可以,但是,考虑到方便管理(方便插件使用者的管理),我们希望把插件的资源文件打成一个包来管理. 当然 ...

  4. linus用的是哪个桌面?

  5. C++读取一串不知个数的数字

    #include <iostream> using namespace std; int main(){ ]; ; while(cin>>shuzu[i]){ i++; } ; ...

  6. OpenSuse13.2安装CUDA Toolkit 7.5

    此次安装过程有点曲折,不过最后还是能成功安装,由于没细细看官方的安装文档,导致花了很多时间安装,希望此文能让想装CUDA的同学少走点弯路 1.NVIDIA Driver是否要装 刚开始要装CUDA时, ...

  7. 生成bundle和移除bundle

    1.命令行生成bundle $ php bin/console generate:bundle --namespace=Acme/TestBundle 2.移除bundle(新的bundle) App ...

  8. Oracle 安装时候的网络相关内核参数

    http://www.cnblogs.com/gaojian/archive/2012/10/12/2721284.html http://blog.chinaunix.net/uid-2442641 ...

  9. 使用SALT-API进入集成开发的简单样例

    测试的时候,可以CURL -K,但真正作集成的时候,却是不可以的. 必须,不可以让TOKEN满天飞吧. 现在进入这个阶段了.写个样例先: import salt import salt.auth im ...

  10. BZOJ 2521 最小生成树(最小割)

    http://www.lydsy.com/JudgeOnline/problem.php?id=2521 题意:每次能增加一条边的权值1,求最小代价让一条边保证在最小生成树里 思路:如果两个点中有环, ...