当前位置: 技术问答>java相关
java中建立oracle连接的问题(oci和thin方式的区别、优劣?)
来源: 互联网 发布时间:2015-06-14
本文导语: 最近在编写一个javabean和oracle数据库建立连接和在数据库中执行基本是操作;用上述两种方法都可以连接成功,但是两者的优劣之分不是非常清晰,希望高手指点。我只知道: 1、在连接时两者有区别,一个需要oracle...
最近在编写一个javabean和oracle数据库建立连接和在数据库中执行基本是操作;用上述两种方法都可以连接成功,但是两者的优劣之分不是非常清晰,希望高手指点。我只知道:
1、在连接时两者有区别,一个需要oracle客户端,一个不需要;
2、oci可以支持通过PreparedStatement对大对象可以操作,而thin则不可以;如果要用thin连接来操作大对象,有别的方法吗?
3、oci 的connection必须要用户自己来close;而thin则不能由用户来close,close会出错;
除了以上所列,还有什么别的不一样吗?请赐教!谢谢。
1、在连接时两者有区别,一个需要oracle客户端,一个不需要;
2、oci可以支持通过PreparedStatement对大对象可以操作,而thin则不可以;如果要用thin连接来操作大对象,有别的方法吗?
3、oci 的connection必须要用户自己来close;而thin则不能由用户来close,close会出错;
除了以上所列,还有什么别的不一样吗?请赐教!谢谢。
|
我就是用的thin,你说的后两个问题我都是用thin来处理的,没遇到你说的问题!一般情况jdbc:oracle:thin(oci)中这个thin和oci只不过表示你用的是
四种JDBC驱动程序的哪一个。我记得好像thin是表示本地协议纯Java驱动程序,而oci是本地API半Java驱动程序.它们的区别不用我说了吧!
四种JDBC驱动程序的哪一个。我记得好像thin是表示本地协议纯Java驱动程序,而oci是本地API半Java驱动程序.它们的区别不用我说了吧!
|
两者的区别就是一个是第三类JDBC驱动(OCI),另一个是第四种JDBC驱动。
THIN一样可以操作大对象的,也可以CLOSE的不会出错的,至于怎么样操作大对象其实就和使用OCI一样的,你不行可能是你的JDBC THIN的驱动太老了,你可以去www.oracle.com下一个最新版本!
THIN一样可以操作大对象的,也可以CLOSE的不会出错的,至于怎么样操作大对象其实就和使用OCI一样的,你不行可能是你的JDBC THIN的驱动太老了,你可以去www.oracle.com下一个最新版本!
|
错!应该是一个是第二类的(oci),一个是第四类的.
|
thin连接要好的多,oci连接是用本地api实现的,不稳定
|
据说OCI实现是通过本地方法来作到的,也就是平台相关的,
而thin是纯Java的
而thin是纯Java的
|
OCI快过thin
|
thin可以通过java程序直接与oracle连接,而oci要通过客户端的驱动与oracle连接
|
效率上OCI比THIN要好,而且连接也比较稳定