MySQL乱码的几种原因

MySQL之所以会乱码,无非是以下几种原因:

1、存进数据库之前就乱码

2、在存进数据库过程中乱码

3、存进数据库后乱码

想知道在哪里出现乱码很简单,在后台打印一下就知道了。

既然知道问题出在哪里,那解决方法也很简单:

1、jsp设置编码是utf-8,保证传到后台的是utf-8的编码

2、将传到后台的请求的参数转为utf-8的编码。至于使用哪种方法,可以使用spring的拦截器,也可以自己写一个,也可以手动转换。

3、在数据库连接上加这么一段jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8,保证传输过程是utf-8的。

4、设置数据库的编码为utf-8,在my.ini设置或者在Config设置也行,注意的是my.ini里default-character-set要改两处地方

5、url或者easyui乱码,可以试一下将tomcat的server.xml中的

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"/>

 

改为

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="utf-8"/>

要保证不乱码,首先要做到编码要统一,其他问题都好找出来。完。

转载于:https://www.cnblogs.com/ginponson/p/4310033.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于 Liquibase 和 MySQL码问题,有几种可能的原因和解决方案。 1. 数据库字符集不匹配:请确保数据库的字符集和你的应用程序或 Liquibase 配置文件中指定的字符集一致。你可以通过执行以下命令来检查数据库的字符集: ```sql SHOW VARIABLES LIKE 'character_set_database'; ``` 如果数据库的字符集与应用程序或配置文件中指定的字符集不匹配,可以通过执行以下命令来修改数据库字符集: ```sql ALTER DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ``` 2. 数据库连接参数设置错误:在 Liquibase 配置文件中,确保你的数据库连接 URL 中包含正确的字符集参数。例如,在 MySQL 的连接 URL 中添加 `useUnicode=true&characterEncoding=utf8` 参数。 示例: ```xml <databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.8.xsd"> <changeSet id="example" author="your_name"> <createTable tableName="example_table"> <column name="example_column" type="VARCHAR(255)"/> </createTable> </changeSet> </databaseChangeLog> ``` 3. 数据库驱动版本问题:确保你使用的 MySQL 驱动程序版本与数据库服务器版本兼容。尝试使用最新的 MySQL 驱动程序,以确保获得最佳的兼容性和稳定性。 如果以上方法都没有解决你的问题,可以提供更多详细信息,例如具体的错误消息或代码片段,以便更好地帮助你解决码问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值