java连接oracle数据库查询乱码(oracle编码格式为WE8DEC)

项目上需要我访问远程服务器获取一些信息,对面用的是oracle数据库(我不能修改人家的编码格式),所以我就得连接oracle获取

我是用的平台是eclipse,平时想到简单的方式就是使用jdcb,但是发现查询后,中文乱码,很是头疼,在网上差了很多资料,但他们大oracle数据库的编码格式都不是WE8DEC,但幸运的是,也能找到几个关于WE8DEC的解码,使用后,发现他不能完全解码,有些中文明显不对

至此已经很是头疼,因为在查如何连接oracle的时候,知道有两种连接方式

1.jdbc:       url = "jdbc:oracle:thin:@IP:1521:数据库名"

2.odbc:      url ="jdbc:odbc:配置的名称"

第一种不需要安装oracle数据库,第二种需要安装服务端,为了省事,就直接用第一种方式,结果顺利得入坑,开始找各种解码方式,始终解决不了乱码问题。

最后,只能用第二种连接方式:odbc,结果就算他没有乱码问题,但是在过程中,出现了一些问题

1.安装oracle服务端(这个网上找自己安)

2.配置oracle

win10系统直接在开始那搜管理工具

java连接oracle数据库查询乱码(oracle编码格式为WE8DEC)_第1张图片

打开odbc数据源

java连接oracle数据库查询乱码(oracle编码格式为WE8DEC)_第2张图片

 点击添加(红色框里是我添加后的结果)

java连接oracle数据库查询乱码(oracle编码格式为WE8DEC)_第3张图片

选择oracle

java连接oracle数据库查询乱码(oracle编码格式为WE8DEC)_第4张图片

填写相关信息

java连接oracle数据库查询乱码(oracle编码格式为WE8DEC)_第5张图片

填写完自己先测试连接一下,没问题后点击OK,oracle就配置完成

3.程序中连接Oracle数据库

            String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
			String url = "jdbc:odbc:mOracle";
			String user="";//用户名
			String pwd="";//密码
			Class.forName(driver);
			connect = DriverManager.getConnection(url,user,pwd);

到这里连接oracle就完成,但是运行后 报错了

告诉我没有一个类,一查发现jdk1.8以上得都缺,所以只好吧jdk换成1.8以下,就可以了,我用的1.7

查询出来的结果没有乱码问题。这样就解决了。

 

你可能感兴趣的:(Java,SQL,连接数据库,oracel,java,乱码)