atitit.client连接oracle数据库的方式总结
client连接oracle数据库的方式总结
文件夹
...
Java程序连接一般使用jar驱动连接。。
标识字符串为thin。
。
。
也叫thin驱动。
当然也能够使用oci c类库驱动,标识字符串为oci。只是考虑到jni的调用。层次增多。不一定能提升性能。。
作者老哇的爪子 Attilax 艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
桌面GUI一般採取c语言驱动oci.dll
oci是Oracle CallInterface的首字母缩写,使用OCI的驱动能够获得最好的性能,而使用java
thin驱动则能够获取最好的可移植性。
可惜的是plsql,还是toed都没有自带oci.dll。。。
。仅仅有navicate 自带了oci驱动。,实际oci.dll仅仅有1M-2M。。
。而oci.dll能够从oraclient提取,或者HA-Instant Client-v11.2.0.3.0-x86.rar (45M)。
。
直接连接
这样的方式最好。方便。。。
。
navicate支持。plsql 仅仅能使用间接连接。toad也好像仅仅能间接连接。。
普通的mysql ,mssql也都是使用直接连接方式,用户体验好。。
间接连接(须要配置tns及其envi var)
相对来说麻烦。
。配置集中化管理了,client程序非常多的情况下实用。
。
JDBC驱动的4种类型
1、JDBC-ODBC bridge plus ODBCdriver: JDBC-ODBC桥驱动程序,将JDBC调用转换为ODBC的调用。( This combination provides JDBC access via ODBC drivers. ODBC binarycode--and in many cases, database client code-- must be loaded on each clientmachine that uses a JDBC-ODBC Bridge.
Sun provides a JDBC-ODBC Bridge driver,which is appropriate for experimental use and for situations in which no otherdriver is available.)注意, 必须将ODBC二进制代码(很多情况下还包含数据库客户机代码)载入到使用该驱动程序的每一个客户机上。这样的类型的驱动程序最适合于企业网(这样的网络上客户 机的安装不是主要问题)。或者是用Java编写的三层结构的应用程序服5、 务器代码。
2、Native-API partly-Java driver: 将JDBC调用转换为对数据库客户端API的调用。
(A native-API partly Java technology-enabled driver: This type ofdriver converts JDBC calls into calls on the client API for Oracle, Sybase,Informix, DB2, or other DBMS. Note that, like the bridge driver,
this style ofdriver requires that some binary code be loaded on each client machine.)这样的类型的驱动程序把客户机API上的JDBC调用转换为Oracle、Sybase、Informix、DB2或其他DBMS的调 用。注意,象桥驱动程序一样。这样的类型的驱动程序要求将某些二进制代码载入到每台客户机上。
3、 Pure Java Driver for Database Middleware: 先将JDBC调用转换为DBMS-independent网络协议。然后由server端的中间件转换为详细数据库server能够接收的网络协议。(net- protocol fully Javatechnology-enabled driver #This style of driver translates JDBC calls into themiddleware vendor's protocol, which is then translated
to a DBMS protocol by amiddleware server. The middleware provides connectivity to many differentdatabases.)这样的网络服务器中间件可以将它的纯Java客户机连接到多种不同的数据库上。
所用的详细协议取决于提供者。
通常,这是最为灵活的 JDBC驱动程序。
有可能全部这样的解决方式的提供者都提供适合于Intranet用的产品。为了使这些产品也支持Internet訪问,它们必须处理 Web所提出的安全性、通过防火墙的訪问等方面的额外要求。几家提供者正将JDBC驱动程序加到他们现有的数据库中间件产品中。
4、Direct-to-Database Pure JavaDriver: 将JDBC调用直接转换为详细数据库server能够接收的网络协议。(native-protocol fully Javatechnology-enabled driver #This style of driver converts JDBC calls into thenetwork protocol used directly by DBMSs, allowing a direct call from the clientmachine
to the DBMS server and providing a practical solution for intranetaccess.)这将同意从客户机机器上直接调用DBMS服务器。是Intranet訪问的一个非常有用的解决方法。
因为很多这种协议都是专用的,因此数 据库提供者自己将是主要来源,有几家提供者已在着手做这件事了。
第3、4类驱动程序将成为从JDBC訪问数据库的首选方法。第1、2类驱动程序在直接的纯Java驱动程序还没有上市前将会作为过渡方案来使用。对第1、 2类驱动程序可能会有一些变种(下表中未列出),这些变种要求有连接器,但通常这些是更加不可取的解决方式。第3、4类驱动程序提供了Java的全部优 点,包含自己主动安装(比如,通过使用JDBC驱动程序的applet applet来下载该驱动程序)。
參考
转 oracle的jdbc连接方式 oci和thin - phoebus0501 - 博客园.htm
atitit.client连接oracle数据库的方式总结的更多相关文章
- atitit.客户端连接oracle数据库的方式总结
客户端连接oracle数据库的方式总结 目录 Java程序连接一般使用jar驱动连接..... 桌面GUI一般采取c语言驱动oci.dll 直接连接... 间接连接(需要配置tns及其envi var ...
- 无需安装Oracle Client连接Oracle数据库
介绍 当我们采用 ODP.NET 检索Oracle 数据库的时候,Oracle客户端是必须安装.假如当时电脑上没有安装Oracle客户端,就不能这么用了,这时候Oracle.ManagedDataAc ...
- plsql连接oracle数据库,不用配置任何东西(转)
在软件开发的过程中,对于使用oracle的朋友们来说,使用plsql工具操作oracle数据库是非常方便的,可是plsql连接oracle数据库的方式有很多种,今天就给大家介绍一种最简单的连接方式,只 ...
- C#连接Oracle数据库的方法(Oracle.DataAccess.Client也叫ODP.net)
官方下载地址(ODP.net)(中文):http://www.oracle.com/technetwork/cn/topics/dotnet/downloads/index.html 官方下载地址(O ...
- plsql 连接oracle数据库的2种方式
plsql 连接oracle数据库的2种方式 CreationTime--2018年8月10日09点50分 Author:Marydon 方式一:配置tnsnames.ora 该文件在instan ...
- 使用C#的两种方式OracleClient组件和OleDB组件连接ORACLE数据库
一.使用OracleClient组件连接Oracle .Net框架的System.Data.OracleClient.dll组件(ADO.Net组件),为连接和使用Oracle数据库提供了很大的方便. ...
- Java连接Oracle数据库的三种连接方式
背景: 这两天在学习Oracle数据库,这里就总结下自己上课所学的知识,同时记录下来,方便整理当天所学下的知识,也同时方便日后自己查询. SQL语句的话,这里我就不多讲了,感觉和其他的数据库(MySQ ...
- java thin方式连接oracle数据库
本文主要描述通过thin方式连接oracle数据库 1.创建web project ,将D:\oracle\product\10.2.0\db_1\jdbc\lib(oracle安装目录)下的ojdb ...
- C#连接Oracle数据库的方法(System.Data.OracleClient、Oracle.DataAccess.Client也叫ODP.net、Oracle.ManagedDataAccess.dll)
官方下载地址(ODP.net)(中文):http://www.oracle.com/technetwork/cn/topics/dotnet/downloads/index.html 官方下载地址(O ...
随机推荐
- [转载]ecmall语言包程序
[转载]ecmall语言包程序 (-- ::) 转载▼ 标签: 转载 收藏了 原文地址:ecmall语言包程序作者:我思故我在 执行顺序 登陆后台后 最先执行的文件是 default.app.php ...
- Oracle之比较NVARCHAR2字符串
一.引言 昨天遇到一个问题,一直想不通是为什么,我在pl/sql里面执行sql语句,选出字段值等于某个值的的行: '; 用select * from test;是可以查到该值的,但是用这条语句却没有结 ...
- django中使用POST方法 使用ajax后出现“CSRF token missing or incorrect”
这个是因为在django的ajax中默认添加了token,因此需要在cookie中增加token头信息. 首先使用JavaScript函数获取token: function getCookie(nam ...
- 浅谈myeclipse2015做cordova/phonegap开发
近期公司项目经理要求用cordova写安卓程序,之前对cordova什么都不懂,然后从网上搜啊搜,好歹有所了解了,感觉做web开发的比較合适,属于三种开发模式的第三种. myeclipse2015有个 ...
- Unknown module(s) in QT: xlsx解决方法
解决方法在此: https://github.com/dbzhang800/QtXlsxWriter Documentation: http://qtxlsx.debao.me QtXlsx is a ...
- yum命令具体解释
yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器. 基於RPM包管理.可以从指定的server自己 ...
- 快速排序的c++实现 和 python 实现
最近在学python,其中有个要求实现快速排序的练习,就顺便复习了c++的快速排序实现. 快速排序的基本思想是,通过一轮的排序将序列分割成独立的两部分,其中一部分序列的关键字(这里主要用值来表示)均比 ...
- 修改net基本三层 动软生产
控制层(dal) 模型层-实体类(Model) 显示层-web
- 2017 ACM区域赛(西安) 参赛流水账
day 0: 周五, 鸽了概统课,早上和紫金港的几位小伙伴一起打车去萧山机场,从咸阳机场到西北工业大学坐了五十多个站的公交车,感觉身体被掏空.晚上在宾馆本来打算补之前训练的一个题,想想还是先花个十来分 ...
- (转)c/c++内存对齐问题
struct/class/unio内存对齐: http://blog.csdn.net/microsues/article/details/6140329 class函数占用字节数问题: http:/ ...