navicat连接oracle一个错误:ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK

时间:2023-03-08 17:43:47

今天使用Navicat连接Oracle数据库。它报告了以下错误:“ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK”

从这个错误判断,要知道的是client不支持server端的字符集造成的,可是改动server端的字符集是不现实的,那我们仅仅能从client找原因了。我们知道Navicat连接Oracle使用的是OCI方式。而我安装的Navicat 10 Premium使用的是OCI的Instant Client 10 是不支持除英文以外的其它的字符集的,所以替换掉Navicat使用的OCI的DLL文件就可以解决问题。

1.Navicat OCI引用位置

能够从Navicat菜单条“工具”-》“选项”-》“OCI”中找到,例如以下图所看到的:

navicat连接oracle一个错误:ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZmVuZ3NodWl5dWU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

navicat连接oracle一个错误:ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK

2.Navicat替换的文件

navicat连接oracle一个错误:ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK

3.ORACLE新版本号的DLL文件

我本机装的是ORACLE企业完整版的数据库,故其包括连接ORACLE的client所需的DLL文件。因此在我本机ORACLE文件夹:D:\ProgramFiles\Oracle\product\11.1.0\db_1\BIN

下找到例如以下文件:

navicat连接oracle一个错误:ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK

替换了就可以

4.重新启动Navicat

替换后的文件,需要重新启动Navicat,重新启动后,你可以申请新的版本号OCI。

版权声明:本文博客原创文章。博客,未经同意,不得转载。