Comment corriger le bug : #1977 - Impossible de convertir le caractère 'utf8' 0xD8AD en 'latin1'.
P粉574695215
P粉574695215 2023-07-18 19:47:03
0
1
579

Je travaille avec phpMyAdmin et j'ai des valeurs de caractères arabes dans ma colonne de nom comme کلب الرقيÙ'Ø© علی العزیزبوری, Je veux les convertir sous la forme correcte.

J'ai essayé la requête suivante et elle a converti la plupart des enregistrements de la table sous la forme correcte.


ALTER DATABASE alfeker_book CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE guestbook CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
UPDATE guestbook SET name = CONVERT(BINARY CONVERT(name USING latin1) USING utf8mb4);

J'ai également essayé d'autres méthodes.

UPDATE guestbook SET name = CONVERT(BINARY CONVERT(name USING binary) USING utf8mb4);

Mais plusieurs d'entre eux restent les mêmes et affichent l'erreur suivante.

#1977 - Cannot convert 'utf8' character 0xD8AD to 'latin1'

J'ai également essayé cette requête. :

SELECT id,name, CONVERT(BINARY CONVERT(name USING latin1) USING utf8mb4) AS converted_name FROM guestbook;

Cette requête fonctionne bien et affiche parfaitement les caractères non convertis. Mais lorsque j'utilise la requête de mise à jour, cela ne fonctionne pas.

P粉574695215
P粉574695215

répondre à tous(1)
P粉460377540

Il s'agit d'un charabia ou d'un "double encodage" de texte arabe.

Il existe plusieurs façons de réparer les données. Il n’y a qu’une seule façon d’améliorer la situation, d’autres ne feront qu’empirer les choses.

Vous jetez un œil à ce problème de caractère UTF-8 ; ce que je vois n'est pas ce que je stocke et suivez les conseils pour obtenir la valeur hexadécimale de ce qui se trouve dans la base de données, en plus de la définition de schéma actuelle. SHOW CRÉER UN TABLEAU. Veuillez également fournir SHOW VARIABLES LIKE 'char%' et les paramètres de connexion.


Avant de sauvegarder les différents ALTER et CONVERT, veuillez fournir les valeurs hexadécimales et je pourrai choisir la bonne méthode de conversion.


Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!