微信昵称乱码

时间:2022-03-15 14:47:49 父亲起名网

储微信昵称存储mysql 两种方法:

第一步:修改nickname字段类型:设为blob就OK

1、tinyblob:仅255个字符

2、blob:最大限制到65K字节

3、mediumblob:限制到16M字节

4、longblob:可达4GB

第二:查询时select CONVERT(table.nickname USING utf8mb4) nickname from table

第二种就是比较复杂了

需要设置一堆信息

修改本地服务器MySQL配置文件/etc/mysql/my.cnf

[client]

default-character-set=utf8mb4

[mysql]

default-character-set=utf8mb4

[mysqld]

character-set-client-handshake=FALSE

character-set-server=utf8mb4

collation-server=utf8mb4_unicode_ci

init_connect=‘SET NAMES utf8mb4’

重启数据库

/etc/init.d/mysql restart

查看数据库编码格式

SHOW VARIABLES WHERE Variable_name LIKE ‘character_set_%’ OR Variable_name LIKE ‘collation%’;

出现以下信息说明修改成功

1

±-------------------------±-------------------+

| Variable_name | Value |

±-------------------------±-------------------+

| character_set_client | utf8mb4 |

| character_set_connection | utf8mb4 |

| character_set_database | utf8mb4 |

| character_set_filesystem | binary |

| character_set_results | utf8mb4 |

| character_set_server | utf8mb4 |

| character_set_system | utf8 |

| collation_connection | utf8mb4_unicode_ci |

| collation_database | utf8mb4_unicode_ci |

| collation_server | utf8mb4_unicode_ci |

±-------------------------±-------------------+

rows in set (0.00 sec)

还有一个坑,如果后面不加编码格式的话,数据库还是会乱码

“jdbcUrl”:“jdbc:mysql://***.***.*.:3306/test?useUnicode=true&characterEncoding=utf8”

————————————————

亲测两种都可以 建议第一种好用

读过此篇文章的网友还读过: