2016-04-25 2 views
0

Недавно я обновил свой сайт до PHP 5.7 и новую установку базы данных MySQL. Предыдущие данные были импортированы.Я хочу изменить сортировку в моей базе данных MySQL

Теперь у меня есть много вопросительных знаков в бриллиантах в выведенном тексте. Я прочитал, и проблема заключается в том, что для сортировки моей базы данных установлено значение latin1_swedish_ci, и мне нужно быть utf8, чтобы правильно отображать специальные символы, хранящиеся в базе данных.

Если я изменю сортировку, это потенциально решит мою проблему, исправив старые сообщения?

Отключить сайт перед изменением сортировки, и требуется ли перезагрузка для вступления в силу? Я немного нервничаю из-за развращения данных, так как мои пользователи будут крайне расстроены, чтобы потерять свои исторические публикации.

Я не создаю новую базу данных, я обновил существующую базу данных и вам нужно сохранить исторические данные.

Я последовал один из ответов размещены ниже, и он работал на данные, которые были введенными в базу данных перед обновлением, но теперь предоставляет новые данные с различными â € œ вместо апострофа и т.д.

+0

* «Теперь у меня есть много вопросительных знаков в алмазах в выводимого текста.» * - так проверьте кодировку файла, и если это все еще не работает, пройти UTF -8 перед запросом –

+2

см. Также http://stackoverflow.com/questions/279170/utf-8-all-the-way-through –

+1

, если вы беспокоитесь о развращении данных, просто скопируйте этот db в таблице tmp –

ответ

1

Вы можете использовать

$con = mysqli_connect("HOST","DB_USER","PASSWORD","DB_NAME"); 
$db->set_charset('utf8'); 

ИЛИ

mysql_query('SET NAMES utf8'); 
+0

Но не смешивайте 'mysql_ *' и 'mysqli_ *'; используйте только последний. –

Смежные вопросы