OCI 驱动程序、瘦驱动程序、数据源 - OracleDataSource 之间的区别?

Posted

技术标签:

【中文标题】OCI 驱动程序、瘦驱动程序、数据源 - OracleDataSource 之间的区别?【英文标题】:Difference among OCI driver, Thin driver, Data Source - OracleDataSource? 【发布时间】:2014-07-15 08:13:20 【问题描述】:

我正在使用带有 Java 的 Oracle Database 10g Express Edition。

链接:

http://srikanthtechnologies.com/articles/oracle/java.html

描述了与不同驱动程序的 3 种类型的连接

我想知道这三个连接可以在任何情况下建立还是在特定情况下使用?

【问题讨论】:

【参考方案1】:

2/3 几乎相同。他们都使用 jdbc:oracle:thin 驱动程序。唯一的区别是调用程序(DriverManager 与 OracleDataSource)。

第一种使用oci驱动(jdbc:oracle:oci8)。这与瘦驱动程序完全不同。瘦驱动程序 100% 用 Ja​​va 实现。所以不需要更多的库。但是OCI驱动需要Oracle OCI客户端,使用C/C++实现(使用oci驱动前必须安装)。因此,它依赖于平台(C/C++ 库)。

有些人认为OCI的性能比thin要好,因为OCI是用native C/C++实现的。但甲骨文从未发布官方文件来证明这一点。

现在大多数应用程序都使用瘦驱动程序,因为它易于部署(不需要 Oracle OCI 客户端)。并且为了与 Oracle 类(OracleDatasource)解耦,大多数人使用 DriverManager 来加载 oracle 瘦驱动程序或连接池。

【讨论】:

以上是关于OCI 驱动程序、瘦驱动程序、数据源 - OracleDataSource 之间的区别?的主要内容,如果未能解决你的问题,请参考以下文章

java连接Orcale数据库并查询插入删除数据

Oracle笔记

Navicate Premium连接Oracle数据库报错

如何使用带有 TNSNames 别名语法的 JDBC 瘦驱动程序连接到 Oracle 数据库

Delphi开发单机瘦数据库程序要点(后缀cds)

甲骨文,PDO_OCI 与 OCI8