2010-07-29 2 views
1

J'essaye de créer un manuscrit qui copie des données d'une vieille base de données mysql héritée dans ma nouvelle base de données formatée par utf-8.Caractères fous - essayant d'insérer dans UTF-8

Un domaine particulier me causer des ennuis, son champ latin1 - et un enregistrement les éléments suivants sont en elle:

!-#$%'&*£¥

Lorsque la mise à jour est effectuée, je reçois le message d'erreur suivant:

Zend_Db_Statement_Exception: SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xA3' for column 'messageContent' at row 1 in C:\xampp\htdocs\portal\ library\Zend\Db\Statement\Pdo.php on line 234

maintenant, je voudrais supprimer des caractères qui causent un problème, mais autre que la vérification ord($character) <= 126 Je ne sais pas quoi faire. Je crains que ma méthode puisse perdre des données précieuses.

J'utilise MySQL 5.1.43 sur Windows 7 - avec PHP 5.3.1

+0

Howeverm doit être quelque chose à voir avec PHP que je peux exécuter cette requête dans MySQL directement: INSERT INTO collectedData (messageContent) VALEURS ("! - # $%" & * Â £ Â ¥ "); – Chris

Répondre

0

trouvé un problème avec une fonction profondément imbriquées dans certaines classes qui était le problème ....

+2

Par tous les moyens, partagez la réponse exacte avec le groupe ... – Wrikken

0

Êtes-vous juste essayer de convertir votre base de données? Si oui, lisez this link qui devrait vous donner quelques conseils sur la conversion, et il y a un script qui pourrait fonctionner.

+0

Non, j'essaie de copier des champs d'une table à une autre. La table source est écrite par quelqu'un d'autre et je ne peux pas la changer. – Chris

Questions connexes