数据库乱码怎么整,)。

用new String(str.getBytes("utf-8"),"ISO-8859-1")之后数据库乱码咋整
这个是用了new string之后的

img


这个是没用new string的

img

建议将数据库编码 统一换为 utf8

人都麻了

英文字符还是中文字母

英文字符就别考虑编码问题了,往jdk版本和数据库版本上考虑考虑

出现乱码的情况,你要想彻底解决这个问题,需要搞定以下几个事情:

  1. 常用的字符编码有哪些,各自的编码方式是怎样的(着重 Unicode/UCS2、UTF-8、ISO-8859-1、GBK这几种编码)
  2. 了解数据库系统中的编码应用。数据库文件中的编码、数据库内存中表数据的编码、与客户端(JDBC)传输时使用的编码
  3. 根据数据库的配置文件,或者,数据库操纵语句 查询出上述几种情况的编码
  4. 一般情况下,JDBC使用的编码和服务端配置中,与客户端传输数据的编码,两者保持一致就可以解决乱码问题
  • Java语言中,JVM内存中的字符/字符串采用的是Unicode/UCS2编码,双字节定长编码,一个字符占两个字节,不可压缩。
  • 数据库的表数据,在内存中存储时,默认也会采用Unicde/UCS2编码,优点是便于字符处理,缺点是相对比较占内存空间。
  • 数据库文件中的字符编码,一般默认会采用UTF-8编码,但不是绝对的。有时候Windows系统上,默认会采用GB2312等汉字编码。
  • 数据库与客户端传输数据的编码,一般默认也会采用UTF-8编码,
    但是,JDBC连接数据库时有时候会默认采用其他编码进行通信,从而出现乱码的状况。
    在JDBC建立连接的URL字符串上面指定编码,可以解决搞定这个状况。
  • 楼主这种诡异的字符串处理方式是不推荐使用的。
    很多情况下,强制编码转换也会引起字符串中的信息丢失,从而出现部分乱码的状况。
    如果明白了我上述说的这些有关编码的内容,开发过程中根本无需考虑编码的问题。

数据库有编码,数据库的表也有单独的编码,数据库表的每个字段都有单独的编码,检查下那个字段编码是否一致