Prenumeruok RSS

MySQL 5 koduotės konvertavimas nepažeidžiant duomenų.

« »

Po perėjimo į MySQL 5 versiją serverio standartinis collation tapo windows-1257 (nes dauguma projektų naudoja šią koduotę). Po mažu pereinėja projektai ant UTF-8 ypač jei naudojama daugiau nei viena kalba.

Taigi turim projektą, kurį importavus duomenys saugomi UTF-8 koduotę, o nurodyti collation windows-1257. Keista bet kolkas veikia teisingai (na rušiavime turi būti problemų). Bet va ant db noriu pakeisti į UTF-8 kodavimą ir t.t. Klausimas kaip tą padaryti nepažeidžiant duomenų? Padarius DUMP per PHPmyAdmin duomenys jau ateina pažeisti. Toks vaidzdas kad reiktų kovertuoti du kartus, kad atgauti orginalų tekstą su teisingomis koduotėmis.

Turbūt kas susidūrę suprato problemą, tad kokios idėjos?

2 responses to “MySQL 5 koduotės konvertavimas nepažeidžiant duomenų.”

  1. gloomy says:

    Aš taip suprantu, kad problemos neturi būti, nes jeigu duomenys saugomi UTF8, tai lygiavimas apsprenžiamas tik pateikiant rezultatus, ir tu jį turėtum galėti pakeisti su ALTER TABLE. Dumpininant duomenis per PMA naudojamas PMA nustatymuose/sesijoje nurodyta koduotė, todėl reikia arba teisingai susikonfigūruoti PMA arba naudoti mysqldump įrankį, kuris pateikiamas kartu su mysql'u.

  2. Situacija kaip sakiau collation visur cp1257, duomenys UTF-8. Kadangi esames puslapis nenaudoja dar Set names, set charset atvaizduoja duomenis gerai. Na su rikiavimu problemos.

    PMA naudoja pa defaultu kazkuri collation kuri tu pasirenki (ant mysql 4.1x ir 5.x) tad duomenis atvaizduojami blogai.

    Isvada padariau kad norint gauti gerai duomenis (eksportuojant) reikia nenaudoti set names, set charset. Apie tai jau rašiau sekančiame poste.

Leave a Reply

Your email address will not be published. Required fields are marked *

> home
  • Apie mane
  • Apklausos
  • Blogas
  • Lietblogs Search
  • Nuorodos
  • Reklama mano bloge
  • Search
  • Tags
  • Testas
  • Projektai
  • Kontaktuok
  • Archyvas