atitit.客户端连接oracle数据库的方式总结
客户端连接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可以从ora客户端提取,或者HA-Instant Client-v11.2.0.3.0-x86.rar (45M)。。
直接连接
这种方式最好,方便。。。。navicate支持,plsql 只能使用间接连接,toad也好像只能间接连接。。
普通的mysql ,mssql也都是使用直接连接方式,用户体验好。。
间接连接(需要配置tns及其envi var)
相对来说麻烦。。配置集中化管理了,客户端程序很多的情况下有用。。
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网络协议,然后由服务器端的中间件转换为具体数据库服务器可以接收的网络协议。(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调用直接转换为具体数据库服务器可以接收的网络协议。(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.客户端连接oracle数据库的方式总结的更多相关文章
- Toad客户端连接Oracle数据库报错 ORA-12170:TNS:连接超时
Oracle 客户端连接Oracle数据库报错 ORA-12170:TNS:连接超时 排错步骤: 1. 查看网络是否畅通: 打开cmd,ping数据库IP 2. 查看端口是否畅通: 打开cmd ...
- atitit.client连接oracle数据库的方式总结
client连接oracle数据库的方式总结 文件夹 Java程序连接一般使用jar驱动连接.. ... 桌面GUI一般採取c语言驱动oci.dll 直接连接... 间接连接(须要配置tns及其env ...
- C#中不用安装Oracle客户端连接Oracle数据库(转)
原文地址:http://www.cnblogs.com/jiangguang/archive/2013/02/19/2916882.html 0.首先,从Oracle网站上下载对应版本的Oracle ...
- 不安装oracle客户端连接oracle数据库
PLSQL Developer 或Toad 不安装Oracle 客户端连接数据库 为了简化Oracle在个人电脑的使用,避免占用不必要的资源,可以不安装Oracle客户端.方法是:使用Oracle I ...
- 配置ORACLE 客户端连接到数据库
--================================= -- 配置ORACLE 客户端连接到数据库 --================================= Oracle ...
- 远程客户端连接MysqL数据库太慢解决方案
远程客户端连接MysqL数据库太慢解决方案局域网客户端访问mysql 连接慢问题解决. cd /etc/mysql vi my.conf [mysqld] skip-name-resolve 此选项禁 ...
- phoenix客户端连接hbase数据库报错:Traceback (most recent call last): File "bin/sqlline.py", line 27, in <module> import argparse ImportError: No module named argparse
环境描述: 操作系统版本:CentOS release 6.5 (Final) phoenix版本:phoenix-4.10.0 hbase版本:hbase-1.2.6 现象描述: 通过phoenix ...
- SQL Data Base 不装oracle客户端连接oracle服务端
SQL Data Base 不装oracle客户端连接oracle服务端 一.直连: devart 二.拷贝dll: Oracle.DataAccess.dlloci.dllociw32.dll
- 客户端连接mysql数据库反应慢
远程客户端连接MysqL数据库太慢解决方案 局域网客户端访问mysql 连接慢问题解决 编辑mysql配置文件 # vi my.conf [mysqld] skip-name-resolve 重启my ...
随机推荐
- 一个继承TList的例子
类声明部分: TDMSTrains = class(TList) private FHashed: Boolean; FHashList: TFpHashList; FOwnsObjects: Boo ...
- SVN服务器搭建和使用(一)(转)
SVN服务器搭建和使用(一) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...
- iframe跨域访问
js跨域是个讨论很多的话题.iframe跨域访问也被研究的很透了. 一般分两种情况: 一. 是同主域下面,不同子域之间的跨域: 同主域,不同子域跨域,设置相同的document.domian就可以解决 ...
- WCF学习记录
一个demo: http://www.cnblogs.com/iamlilinfeng/p/4083827.html
- 反射类属性生成DataTable
public class People //类名 { private static string name; //字段 private string sex;//字段 public string Se ...
- 缺jstl.jar包导致的代码出现异常
java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config 看报错中的红色部分,意思是缺类异常,再看后面蓝色粗体倾斜部分, ...
- Jade之注释
注释 jade注释可以保留在编译后生成的html中,也可以不保留. jade: // 这个会保留下来 p Hello //- 这个不会保留 p World html: // 这个会保留下来 <p ...
- 关于e^PI>PI^e
- 关于collapsed margin(外边距合并)
这是前面写postion定位时写到最后面的例子的时候发现的一个问题,于是专门写一篇随笔来解释记录一下,毕竟两个知识点同时写在一篇文章里面有点混乱的感觉.. 上篇随笔position定位遇到的问题在这里 ...
- Win7(32/64)VS2010配置编译GDAL环境(图文教程+亲测可用!)
最近的一个VS2010的项目中用到了GDAL,关于GDAL这个库的说明与赞美,这里就不赘述了,下面是在VS2010中配置GDAL的详细过程. 系统说明 Win7(32位/64位),VS2010,GDA ...