2017-06-24 4 views
0

J'ai une énorme base de données MySQL. il est plein de texte arabe, l'un des l'info tables peuvent être affichées ici:L'arabe ne s'affiche pas correctement dans SQLite après la conversion de MySQL

enter image description here

J'utilisé this program pour le convertir en un fichier db SQLite, cependant, après la conversion, les lettres apparaissent de façon foiré :

enter image description here

aussi, j'ai essayé de voir le fichier exporté en utilisant « SQLite Database Browser », et ce fut le même comportement foiré. aiguilles pour dire que c'était la même chose sur Android.

+0

est le texte arabe au format utf8? après avoir atténué les données, pourriez-vous ouvrir le fichier avec l'éditeur et le voir en arabe? (essayez de vider une petite quantité de données ou une petite table pour la vérifier avec l'éditeur de texte) – Tamar

+0

Non, Notepade ++ montre aussi des caractères étranges, et j'ai utilisé l'option 'Encoder en UTF-8', mais, dans l'application que j'ai utilisée pour convertir la base de données, il affiche le texte valide en mode lecture seule. Cependant, en mode édition, il fait quoi dans l'image ci-dessus. – UpsideDownTree

+0

Apparemment, "Pro Enterprise Manager" est bogué, ou la base de données MySQL n'est pas étiquetée avec le codage correct. –

Répondre

0

Je suis venu à une conclusion, the program I used n'a pas été bon à la manipulation arabe, donc au lieu,

• J'exporté chaque table en tant que fichier CSV en utilisant HeidiSQL.

• Puis j'ai créé une nouvelle base de données SQLite3 en utilisant DB Browser.

• Ensuite, j'ai réimporté les nouveaux fichiers CSV en tant que tables, et l'arabe a été importé avec succès. Il va sans dire que dans chacune de ces étapes, je me suis assuré de toujours utiliser l'encodage UTF-8 lors de l'importation/exportation.

-1

Ajouter cette ligne dans le haut de votre fichier SQL:

PRAGMA encoding="UTF-8";