历史版本8 :[设计器]通过oci方式连接Oracle 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 描述编辑

前面以oracle为例介绍了JDBC数据连接的过程,其中oracle是通过thin的方式连接的。
大家都知道oracle除了thin方式可以连接之外,oci方式也可以,下面来介绍怎么通过oci的方式来连接oracle。

2. oci和thin的区别编辑

Java程序连接oracle数据库时,用oci驱动要比用thin驱动性能好些。
主要的区别是使用thin驱动时,不需要安装oracle的客户端,而使用oci时则要安装oracle的客户端。

3. oci连接方式编辑

1)在本地安装好oracle的客户端之后,打开开始菜单可以看到如下图的Oracle目录,打开下面的Net Manager:
222
2)选中Oracle net配置-本地-服务命名,单击左边的创建,如下图:
222
3)在弹出的网络服务名向导框中,输入服务名,这个名可以随便写,填完后点击下一步,如下图:
222
4)保持默认的TCP/IP协议,点击下一步,如下图:
222
5)输入要连接的数据库的IP地址和端口号,然后点击下一步,如下图:
222
6)输入数据库名,即所谓的databaseName,点击下一步,如下图:
222
7)点击测试,在弹出的窗口测试是否能正常连上数据库(注意用户名密码是否正确),成功连上数据库则点完成。如下图:

222

8)点击文件-保存网络配置,至此完成了服务名的配置。
222
9)打开设计器,打开服务器下面的定义数据连接,如下图:
222
10)新建JDBC数据连接,选择Oracle,在url里面输入oci连接方式,输入用户名,密码,点击测试连接,如下图:
URL最后面的这个名称是第三步输入的那个网络服务名。
222

4.备注编辑

本机测试环境:

64位 Windows 10 操作系统

64位 Oracle 11g

如果无法连接,请排查以下原因:

1)finereport9.0是64位的,要对应的64位的Oracle客户端。

2)检查日志中的报错信息,如发现create connection error, url: jdbc:oracle:oci:@axing, errorCode 12154, state 66000类似信息

      则是没有对应的网络服务名,检查服务名是否配置,或配置完有没有忘记保存。

3)检查日志中的报错信息,如发现错误代码:11300008 数据库连接失败: no ocijdbc10 in java.library.path

      则是缺少ocijdbc10.dll文件,将此文件下载复制到Oracle客户端安装目录对应的product\11.2.0\dbhome_1\BIN路径下,重启设计器即可。