客户端连接oracle数据库的方式总结

目录

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

桌面GUI一般采取c语言驱动oci.dll

直接连接...

间接连接(需要配置tns及其envi var)...

JDBC驱动的4种类型...

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数据库的方式总结的更多相关文章

  1. Toad客户端连接Oracle数据库报错 ORA-12170:TNS:连接超时

    Oracle 客户端连接Oracle数据库报错   ORA-12170:TNS:连接超时  排错步骤: 1. 查看网络是否畅通:  打开cmd,ping数据库IP 2. 查看端口是否畅通: 打开cmd ...

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

    client连接oracle数据库的方式总结 文件夹 Java程序连接一般使用jar驱动连接.. ... 桌面GUI一般採取c语言驱动oci.dll 直接连接... 间接连接(须要配置tns及其env ...

  3. C#中不用安装Oracle客户端连接Oracle数据库(转)

    原文地址:http://www.cnblogs.com/jiangguang/archive/2013/02/19/2916882.html 0.首先,从Oracle网站上下载对应版本的Oracle ...

  4. 不安装oracle客户端连接oracle数据库

    PLSQL Developer 或Toad 不安装Oracle 客户端连接数据库 为了简化Oracle在个人电脑的使用,避免占用不必要的资源,可以不安装Oracle客户端.方法是:使用Oracle I ...

  5. 配置ORACLE 客户端连接到数据库

    --================================= -- 配置ORACLE 客户端连接到数据库 --================================= Oracle ...

  6. 远程客户端连接MysqL数据库太慢解决方案

    远程客户端连接MysqL数据库太慢解决方案局域网客户端访问mysql 连接慢问题解决. cd /etc/mysql vi my.conf [mysqld] skip-name-resolve 此选项禁 ...

  7. 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 ...

  8. SQL Data Base 不装oracle客户端连接oracle服务端

    SQL Data Base  不装oracle客户端连接oracle服务端 一.直连: devart 二.拷贝dll: Oracle.DataAccess.dlloci.dllociw32.dll

  9. 客户端连接mysql数据库反应慢

    远程客户端连接MysqL数据库太慢解决方案 局域网客户端访问mysql 连接慢问题解决 编辑mysql配置文件 # vi my.conf [mysqld] skip-name-resolve 重启my ...

随机推荐

  1. [其他] 蒙特卡洛(Monte Carlo)模拟手把手教基于EXCEL与Crystal Ball的蒙特卡洛成本模拟过程实例:

    http://www.cqt8.com/soft/html/723.html下载,官网下载 (转帖)1.定义: 蒙特卡洛(Monte Carlo)模拟是一种通过设定随机过程,反复生成时间序列,计算参数 ...

  2. HTML5基础总结

    HTML5是HTML语言的第五次重大版本升级,新增了如下内容:1.新增<video>.<audio>标签在页面上直接播放多媒体资源;2.新增<input>标签的ty ...

  3. SVN服务器搭建和使用(一)(转)

    SVN服务器搭建和使用(一) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. 现在Subversion已经迁移到apache网站上 ...

  4. Errors occurred during the build. Errors running builder 'JavaScript Validator' on project 'XXX'.

    Errors occurred during the build. Errors running builder 'JavaScript Validator' on project 'XXX'.   ...

  5. XML文件操作(C#)

    XML应用于Web开发的许多方面,常用于简化数据的存储和共享,它的设计宗旨是传输数据,而非显示数据.下面简单介绍一下C#是如何对XML文件进行读取的. 1.首先,建立XML对象并关联XML文件 str ...

  6. 第一章 git指令与设置

    相关指令: 1.从远程的master分支上创建新的分支,此时新分支内容与master分支内容相同: git checkout master; git branch newbranch; git che ...

  7. Python基础学习笔记FromImooc.com

    1.list L = ['a','a','a','a','a','a3'] L[0] = a L[-1] = a3   添加新元素 L.append('paul') L.insert(-1,'Paul ...

  8. 委托 在其他类中修改form中的控件属性

    通常情况下,我们需要在其他业务类中将提示信息时时显示到主界面上,可以通过以下方式 Form1.cs using System; ; i < ; i++) {                 cb ...

  9. web cookie and session

    一.什么是会话? 打开一个浏览器,访问多个网址后,再关掉浏览器,这一整个过程就是会话. 二.cookie技术 这是客户端保存临时数据的技术,主要用于保存用户的登录信息及其它需要保存的数据,如购买与结帐 ...

  10. 斯坦福第五课:Octave 教程(Octave Tutorial)

    5.1  基本操作 5.2  移动数据 5.3  计算数据 5.4  绘图数据 5.5  控制语句:for,while,if 语句 5.6  矢量化 5.7  工作和提交的编程练习 5.1 基本操作