Java中连接数据库时汉字都变成问号是怎么回事

Java中连接数据库时汉字都变成问号是怎么回事,第1张

你从数据库获得的信息是以UTF-8进行编码的,当传递到eclipse下,获得的数据是以GB2312 编码的,即eclipse会用GB2312对数据库中以UTF-8 编码的字符再次编码,得到的肯定是乱码。

解决方法,推荐的是使用String a = new String("数据库数据"getBytes("ISO8859-1"),"GB2312");将字符转换为GB2312,这样应该就显示正常了

Mysql数据库常见乱码处理方式

------先分清是否是数据库乱码,如果是其它则用其它方式处理

说明:i>里面每条并不是说是一个解决办法,有时都要用到;

ii>这些方法应该能解决常见的乱码问题,并且这些解决方法都很简捷。

1在安装数据库的过程中将默认的拉丁文-->GBK。

2在创建数据库时设置选择GBK或者gb2312。

3Mysql安装目录下的myini文件,将

"default-character-set=xxxxx"

中的xxxxx改成GBK或者gb2312。

4Mysql安装目录下的\\data\\databasename(数据库名)\\dbopt文件打开

default-character-set=gbk

default-collation=gbk_chinese_ci;

如果上面不是gbk和gbk_chinese_ci则改成支持中文的GBK或者gb2312。

5进入Mysql的dos命令下:进入某数据库后

show

full

columns

from

tablename

;查看数据类型,如果不是支持中

文的类型则执行alter

table

tablename

convert

to

character

set

gbk

6在创建数据库时(用命令创建时)create

database

databasename

CHARACTER

SET

gbk;

这是我当年总结的,现在都用oracle了,越学忘记的越多了,不过mysql只要里面的几条必好使

根据下面这几个步骤,选择 *** 作

① 首先把MySQL的服务停掉 在运行窗口输入:net stop mysql

② 把服务器和客户端的字符集改成自己想用的字符集:GB2312或是utf8等……

具体 *** 作为:打开mysql安装目录下的myinitet;

找到default-character-set,将其改为自己想用的字符集:GB2312或是utf8等……,要注意的是这里有两个default-character-set,用ctrl+f定位在文件最前面输入default就会找到,都要改过来;

③ 重启MySQL服务器,在运行窗口输入:net start mysql

④ 最重要的是一点是,到这里我们已经能够解决乱码问题了,可问题是我们依然还会出现乱码问题,这是因为我们现在的表被创建的时候用的是默认的字符集(latin1),所以这时候我们要把表删除,然后重建就可以了

根据下面这几个步骤,选择 *** 作

首先把mysql的服务停掉

在运行窗口输入:net

stop

mysql

把服务器和客户端的字符集改成自己想用的字符集:gb2312或是utf8等……

具体 *** 作为:打开mysql安装目录下的myinitet;

找到default-character-set,将其改为自己想用的字符集:gb2312或是utf8等……,要注意的是这里有两个default-character-set,用ctrl+f定位在文件最前面输入default就会找到,都要改过来;

重启mysql服务器,在运行窗口输入:net

start

mysql

最重要的是一点是,到这里我们已经能够解决乱码问题了,可问题是我们依然还会出现乱码问题,这是因为我们现在的表被创建的时候用的是默认的字符集(latin1),所以这时候我们要把表删除,然后重建就可以了

"1,设置下你数据库的编码,一般设置成UTF-8或GBK或GB2312

2,java读取TXT数据时可以转换下编码,再存进数据库,从数据库读取出来后显示时也同样的转换下编码,貌似可以用个过滤器来弄的,"

1查看java源码的编码格式是否与数据库的编码格式一致,不一致则改为一致就ok了

查看java源码的编码格式:点击你创建的项目右键----->属性----->Resource---->右侧的text

file

encoding

2使用格式化参数

String

name

=

new

String(tradenamegetBytes("ISO-8859-1"),"UTF-8");

以上就是关于Java中连接数据库时汉字都变成问号是怎么回事全部的内容,包括:Java中连接数据库时汉字都变成问号是怎么回事、用JAVA插入到mysql中出现乱码是什么原因、java从mysql数据库读出的中文是乱码怎么解决等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10178269.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存