client连接oracle数据库的方式总结

文件夹

​Java程序连接一般使用jar驱动连接。。​

​...1 ​

​桌面GUI一般採取c语言驱动oci.dll1​

​直接连接...1 ​

​间接连接(须要配置tns及其envi var)...1 ​

​JDBC驱动的4种类型...1 ​


Java程序连接一般使用jar驱动连接。。

标识字符串为thin。

也叫thin驱动。

当然也能够使用oci  c类库驱动,标识字符串为oci。只是考虑到jni的调用。层次增多。不一定能提升性能。。


作者老哇的爪子 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