различия в параметрах сортировки базы данных
У меня есть база данных для сайта, который я разрабатываю в WAMP. Параметры сортировки для базы данных latin1_swedish_ci
, но каждая таблица в базе данных utf84mb_unicode_ci
.
Должен ли я беспокоиться об этом?
В будущем я могу использовать utf84mb_unicode_ci
для обоих, но как насчет баз данных, в которых у меня уже есть контент?
1 answers
Из быстрой проверки руководства MySQL параметры сортировки базы данных применимы только для операций на уровне базы данных (выделено мной):
Для инструкций CREATE TABLE набор символов базы данных и параметры сортировки используются в качестве значений по умолчанию для определений таблиц, если набор символов таблицы и параметры сортировки не указаны. Чтобы переопределить это, укажите явный НАБОР СИМВОЛОВ и параметры таблицы СОРТИРОВКИ.
Для ЗАГРУЗКИ ДАННЫХ операторы, которые не содержат предложения НАБОРА СИМВОЛОВ, сервер использует набор символов, указанный системной переменной character_set_database, для интерпретации информации в файле. Чтобы переопределить это, укажите явное предложение НАБОРА СИМВОЛОВ.
Для хранимых подпрограмм (процедур и функций) набор символов базы данных и параметры сортировки, действующие во время создания процедуры, используются в качестве набора символов и параметров сортировки символьных данных, для которых объявление не содержит НАБОРА СИМВОЛОВ или атрибута СОРТИРОВКИ. Чтобы переопределить это, укажите явный НАБОР СИМВОЛОВ и СОПОСТАВЬТЕ атрибуты.
Http://dev.mysql.com/doc/refman/5.7/en/charset-database.html
Для WordPress имеет значение сопоставление уровней таблицы . Вот почему он на самом деле может делать такие вещи, как создание/обновление utf8mb4
таблиц внутри базы данных, которой нет.
Так что, похоже, это не проблема, и вы могли бы возможно, даже установите параметры сортировки в существующих базах данных без каких-либо проблем (однако с таблицами совсем другая история!).