Mysql
 sql >> база данни >  >> RDS >> Mysql

Фиксиране на кодировки

Вашият текст е кодиран в UTF-8 и след това повторно декодиран по погрешка като Mac Roman .

Няма да можете да поправите това в базата данни, тъй като MySQL не познава кодирането на Mac Roman. Можете да напишете скрипт, който да обхожда всеки ред от всяка засегната таблица и да коригира текста, като обърнете цикъла на кодиране/декодиране. Python е възможност, като има добър набор от кодировки:

>>> print u'é'.encode('macroman').decode('utf-8')
é
>>> print u'ö'.encode('macroman').decode('utf-8')
ö
>>> print u'í'.encode('macroman').decode('utf-8')
í

Като алтернатива, ако няма съдържание, различно от ASCII, което да не е засегнато от този проблем, можете да опитате да използвате mysqladmin за да експортирате SQL дъмп, след което го конвертирайте наведнъж, или с помощта на скрипт, както е по-горе, или, ако имате текстов редактор (вероятно на Mac), който може да го направи, заредете скрипта като UTF-8 и след това го запишете като Mac Роман. Накрая импортирайте отново дъмпа, като използвате mysql < dump.sql .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. java.lang.IllegalStateException:Опит за изпълнение на операция на затворена EntityManagerFactory

  2. Подигравателна заявка за вмъкване към MySQL база данни с помощта на Moq

  3. CakePHP:Как мога да използвам операция HAVING при изграждане на заявки с метод find?

  4. Как да отпечатате Datagridview има таблица във VB

  5. MySQL съхранена процедура срещу функция, коя бих използвал кога?