перенос данных с latin-1 на utf-8 - PullRequest
1 голос
/ 02 декабря 2009

У меня есть старый сайт, база данных которого находится в кодировке latin-1. я создал друпал сайт дубликат старого сайта По умолчанию база данных drupal находится в кодировке utf-8 Теперь, как я могу перенести базу данных с латиницы-1 на UTF-8. Я попробовал себя, и я получил нежелательных персонажей. как мне это сделать.

Ответы [ 4 ]

2 голосов
/ 02 декабря 2009
mysqldump ... | iconv -f ISO-8859-1 -t UTF-8 | mysql ...
1 голос
/ 02 декабря 2009

Вот возможное решение:

http://www.oreillynet.com/onlamp/blog/2006/01/turning_mysql_data_in_latin1_t.html

Надеюсь, это поможет:)

0 голосов
/ 02 декабря 2009

Вы можете сделать это, используя скрипт, выполненный на другом языке, например, в Groovy:

def utf8 = java.nio.charset.Charset.forName("UTF-8")
def latin1 = java.nio.charset.Charset.forName("ISO-8859-1") // this is latin1
def newString = new String(fetchStringFromDB().getBytes(latin1), utf8)
updateStringInDB(newString)
0 голосов
/ 02 декабря 2009

Простой ручной способ: экспорт содержимого базы данных, например, с phpMyAdmin. Затем создайте пустой текстовый файл с кодировкой UTF-8, скопируйте и вставьте содержимое файла экспорта, а затем отредактируйте определения таблиц для использования UTF-8, если это необходимо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...