Maison > Article > base de données > Comment résoudre le code tronqué MySQL chinois ?
La base de données MySQL devient de plus en plus populaire.
Lorsque les Chinois enregistrent des données dans des bases de données, ils ne perdent généralement pas les caractères chinois, mais lorsque MySQL enregistre les caractères chinois, ils seront tronqués par défaut.
Ici il faut faire quelques configurations pour que ce ne soit plus "quand il sera sauvegardé, ce sera en chinois, et quand on le trouvera, ce sera toutes sortes de points d'interrogation".
1. Nous pouvons d'abord vérifier notre base de données mysql pour voir si les caractères chinois sont tronqués.
Connectez-vous à la base de données, créez une table dans la base de données de test, puis insérez le chinois et interrogez les résultats. On voit que le chinois est devenu un point d’interrogation.
show databases; use test; create table users(name varchar(50)); insert into users values('张三'); select * from users;
2. Vérifions la valeur des variables liées à chaque personnage.
Entrez SHOW VARIABLES LIKE 'character%';
Nous pouvons voir que la valeur de Character_set_database est latin1. Les valeurs de chacun peuvent ne pas être les mêmes que les miennes. De manière générale, elles ne devraient pas toutes être utf8.
3. S'il y a de nombreux endroits qui ne sont pas utf8, nous devons modifier le fichier de configuration mysql my.ini.
se trouve généralement dans le répertoire racine du chemin d'installation, ou sous bin dans le répertoire racine du chemin d'installation, ou /etc/my.cnf sous Linux.
4. Dans my.ini :
Rechercher [ client ], modifiez ou ajoutez default-character-set=utf8;
Recherchez [mysqld], modifiez ou ajoutez Character-set-server=utf8; >Recherchez [mysql], modifiez ou ajoutez default-character-set=utf8;
5. Redémarrez la base de données MySQL.
Sous Windows, vous pouvez exécuter services.msc, rechercher le service mysql et redémarrer
Sous Linux, vous pouvez /etc/ ; init.d/mysqld restart;
Le mien est xampp et aucun service n'est ajouté. Cliquez simplement sur arrêter, puis sur démarrer.
6. Afficher les valeurs de chaque variable ;
ou
SHOW VARIABLES LIKE 'character%';
status
7. Testez si le code est toujours tronqué après modification.
Comme vous pouvez le constater, notre base de données peut afficher le chinois normalement.
create database baidujingyan; use baidujingyan; create table users(name varchar(50)); insert into users values('张三'); select * from users;
Notes
Si dans le programme, des caractères tronqués apparaîtront également , vous pouvez ajouter des noms d'ensemble utf8Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!