有一下几个点来查看原因:
1.查看本地是否安装oracle客户端,并且是否完成一下配置;OCI库需要指定自己的oci文件地址(oci.dll)
2.如果上面已经配置好仍然报同样的错误,需要查看安装的Oracle客户端路径下是否有tnsnames.ora文件,没有的话,需要做如下配置:
Oracle安装目录下创建子文件夹network\admin,绝对路径也就是x:oraxcle安装路径\network\admin,在该目录下新建文件tnsnames.ora。然后添加环境变量TNS_ADMIN,值为tnsnames.ora文件所在路径。
tnsnames.ora
orcl =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = xx.xx.xx.xx)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
设置环境变量
变量名 | 变量值 | 备注 |
Path | Oracle安装目录 | 在Path后面追加oracle-client解压路径 |
TNS_ADMIN | x:oraxcle安装路径\network\admin | tnsnames.ora所在路径 |
NLS_LANG | SIMPLIFIED CHINESE_CHINA.ZHS16GBK | 设置Oracle字符语言集 |
如果不清楚远程数据库的ORACLE 语言,可以ssh或者telnet到远程机器,在命令界面输入,用命令行连接到数据库,查看NLS_LANGUAGE 的值。