How to deal with the defect of utf8 character set in Mysql
This article is about how to deal with defects in the utf8 character set in Mysql. The editor thinks it is very practical, so share it with you as a reference and follow the editor to have a look.
Mysql utf8 character set defect handling (emoji symbol problem, Wechat, Alipay, QQ nickname) 1. Datasheet change
Because the non-standard utf8 character set (utf8mb3) is used in Mysql, you need to modify the character set type manually, as follows
ALTER TABLE `user`CHANGE COLUMN `username``username` VARCHAR (50) CHARSET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'user name' AFTER `password`; 2. JDBC connection settings
Referring to connector-j-reference-charset, you can see that if a program wants to insert utf8mb4 characters, the following conditions need to be met:
Connector/J version 5.1.47 and above: 1. Specify the characterEncoding parameter as UTF8/UTF-8, and the new version is directly mapped to utf8mb4 encoding; 2. If the collation specified by connectionCollation is not utf8mb4-related, the characterEncoding parameter will be rewritten to the encoding corresponding to the collation; Connector/J version 5. 1. 47 and below: 1. Set the MySQL parameter variable character_set_server=utf8mb4; 2. Specify the characterEncoding parameter as UTF8/UTF-8, and the jdbc program will probe whether to use utf8mb4.
You can solve the problem by upgrading the program to Connector/J 5.1.47.
Thank you for reading! This is the end of this article on "how to deal with utf8 character set defects in Mysql". I hope the above content can be of some help to you, so that you can learn more knowledge. if you think the article is good, you can share it for more people to see!