Mysql
 sql >> Base de données >  >> RDS >> Mysql

Quel est le problème avec le caractère unicode 首(U+9996) et comment java/mysql le traite-t-il et ses amis ?

Avez-vous vérifié que la valeur stockée dans la base de données est bien U+003f (point d'interrogation) ? Il existe toutes sortes de conventions sur la façon d'afficher les caractères qui n'existent pas dans la police choisie et de les afficher sous la forme ?' est assez courant.

Donc, très probablement, le caractère est stocké correctement et, pour quelque raison que ce soit, s'affiche simplement sous la forme '?'. Fondamentalement, ignorez comment il est rendu et regardez quel point de code est stocké dans la base de données. Est-ce U+9996 ou U+003f (ou quelque chose d'autre entièrement) ? Ne présumez pas aveuglément que ce n'est pas parce qu'il est rendu sous forme de point d'interrogation qu'il s'agit en fait d'un point d'interrogation stocké dans la base de données.