The standard we follow is that the encoding of databases, tables, fields, and pages or texts should be unified.
Many mysql database tools (except phpmyadmin, which are occasionally used and feature-intensive) do not support specifying database encoding during creation. Of course, you can change it to my. ini to solve this problem, but you need to restart mysql, but the following statement will be more effective
GBK: create database test2 default character set gbk COLLATE gbk_chinese_ci;
UTF8: create database 'test2' default character set utf8 COLLATE utf8_general_ci
Note: if it is not set through the my. ini configuration file, it is only valid in the current status and will expire after the Database Service is restarted. Therefore, if you want to modify the my. ini file without garbled characters, you can specify UTF8 during database creation as follows:
| Character_set_client | utf8 |
| Character_set_connection | utf8 |
| Character_set_database | utf8 |
| Character_set_filesystem | binary |
| Character_set_results | utf8 |
| Character_set_server | latin1 |
| Character_set_system | utf8
Note This Configuration | character_set_server | latin1 cannot be set to UTF8
Garbled characters still occur during interaction.
Only when UTF8 is set in my. ini will all be changed to UTF8
-------------------------
Mysql encoding command
SET character_set_client = utf8;
SET character_set_connection = utf8;
SET character_set_database = utf8;
SET character_set_results = utf8;/* be sure to use it here */
SET character_set_server = utf8;
SET collation_connection = utf8_bin;
SET collation_database = utf8_bin;
SET collation_server = utf8_bin;
Configure the default encoding in my. ini
Default-character-set = utf8
Connect to the database and set the Encoding
Jdbc: mysql :/// 192.168.0.5: 3306/test? CharacterEncoding = utf8
/*************************************** ** Java and mysq encoding correspond ********************************* *******/
Common Coding UTF-8 in java; GBK; GB2312; ISO-8859-1;
Corresponds to the UTF-8, gbk, gb2312, and latin1 codes in the mysql database.
---------------------------
URL = jdbc: mysql: // yourIP/college? User = root & password = yourPassword & useUnicode = true & characterEncoding = gbk
Do not try to use SQL commands to modify character_set_server. It is temporary, or do you honestly modify my. ini or my. cnf in linux?
Copy codeThe Code is as follows:
[Mysqld]
......
Character_set_server = utf8
Default-character-set = utf8