您的位置:首页 > 数据库 > Oracle

DBeaver链接Oracle数据库中文显示乱码

2013-04-13 20:04 2481 查看

1. 背景

DBeaver是一款不错的开源数据库客户端http://www.oschina.net/p/dbeaver,基本的增删改查足够用了。但在链接Oracle时,由于字符编码问题,容易产生乱码,现可以使用Druid来解决这个问题,可参考使用Druid解决Oracle Thin驱动中文乱码,下面是详细配置。(P.S. 不止DBeaver和Oracle,其他客户端和数据库的乱码问题都可通过Druid用类似的方式来解决)

2. 配置

2.1. Driver配置

从Toolbar>Database>Driver Manager,新建一个驱动。



配置驱动内容,主要如下,其余配置可任意指定。

驱动类
com.alibaba.druid.proxy.DruidDriver
使用Druid
链接URL
jdbc:wrap-jdbc:filters=encoding:name=dbeaver:jdbc:oracle:thin:@{host}[:{port}]/{database}
“filters=encoding”给Druid配置编码过滤器,用于编码转化;
{host}、{port}和{database}则是占位符,创建连接时会用到
默认端口
1521
Oracle的默认端口
类库
/path/to/druid.jar
/path/to/ojdbc14.jar
类库的路径,必须提供Druid和Oracle的类


2.2. 数据库链接配置

基于刚才的Druid Driver,可创建新的Oracle链接。



配置基本的链接参数,数据库的域名、端口、库名等信息会自动填入链接URL中。



在Advanced标签下配置链接参数,给Druid指定客户端和服务端的编码参数。



2.3. 连接数据库

配置好链接后,即可在DBeaver中使用Druid链接Oracle了,以下是效果,中文都已能正常显示。



3. 对比与不足

由于Druid对Oracle驱动做了一层代理,只提供JDBC的基本接口,使得DBeaver无法查看和使用Oracle中的很多功能,不过对于日常的基本数据操作已经足够。下面是使用原生驱动和Druid的效果。

原生Thin驱动,除了显示数据库Schemas外,还有很多数据库的元信息,每个Schema都能看到完整的内容。





Druid驱动,只有基本信息,功能远比原生驱动弱。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: