Maison  >  Article  >  base de données  >  Comment afficher les caractères UTF-8 dans la ligne de commande MySQL tout en préservant le formatage du tableau ?

Comment afficher les caractères UTF-8 dans la ligne de commande MySQL tout en préservant le formatage du tableau ?

DDD
DDDoriginal
2024-10-30 14:44:02589parcourir

How to Display UTF-8 Characters in MySQL Command Line While Preserving Table Formatting?

Formatage de la ligne de commande MySQL avec UTF-8

Les utilisateurs de MySQL rencontrent souvent des problèmes de formatage lors de l'interrogation de données contenant des caractères non anglais, tels que des chaînes suédoises ou norvégiennes. Par défaut, l'utilisation de la ligne de commande MySQL avec le jeu de caractères défini sur latin1 garantit un formatage correct, mais passer à utf8 pour afficher correctement les caractères spéciaux peut perturber le formatage.

Solution

Pour conserver le formatage tabulaire pendant affichant les caractères UTF-8, exécutez la commande suivante :

mysql --default-character-set=utf8

Vous pouvez également modifier le fichier /etc/mysql/my.cnf et ajouter :

[mysql]
default-character-set=utf8

Explication plus approfondie

Les solutions ci-dessus configurent les variables de configuration Character_set_client, Character_set_connection et Character_set_results sur utf8. Ces paramètres dictent les jeux de caractères utilisés par le client, la connexion à la base de données et les résultats renvoyés.

La variable Character_set_database représente le jeu de caractères attribué au schéma ou à la base de données actuel. Le jeu de caractères du schéma est hérité de Character_set_server, sauf indication contraire explicite lors de la création.

De plus, les tables et colonnes individuelles peuvent avoir des jeux de caractères personnalisés indépendants de leur table ou schéma parent. Pour des informations détaillées sur la vérification de ces jeux de caractères, reportez-vous aux ressources fournies.

Résoudre les problèmes d'affichage des caractères incorrects

Malgré la définition de tous les jeux de caractères sur utf8, certains caractères peuvent toujours apparaître déformés. Cela pourrait se produire si des caractères Unicode étaient saisis via un client utilisant la connexion latin1 (par exemple, mysql --default-character-set=latin1). Pour résoudre ce problème, connectez-vous à la base de données en utilisant le même jeu de caractères que les données d'entrée.

Remarque sur l'implémentation UTF-8 de MySQL

L'encodage utf8 de MySQL est une implémentation incomplète de UTF-8. Pour une implémentation UTF-8 entièrement conforme, pensez à utiliser le jeu de caractères utf8mb4 :

mysql --default-character-set=utf8mb4

Pour une exploration plus approfondie, consultez les ressources fournies sur la différence entre utf8 et utf8mb4.

Ce 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn