Проблема с кодировкой подпрограмм mysqldump
Как я могу создать дамп структуры базы данных MySQL и данных в окнах с включенным mysqldump с польскими символами («ęóąśłżźćń»)?
До сих пор мне удалось полностью сбросить его, используя
mysqldump.exe <my_settings> --default-character-set=cp1250
. Кажется, это решает, по крайней мере, мою проблему с кодировкой вставки данных, поскольку я установил для нее значение cp1250 (Windows Central European) вместо latin2.
Проблемные фразы находятся в моем структурном коде БД. Например: все мои хранимые процедуры и функции содержат эти "специальные" символы в своих комментариях. Я полагаю, по какой-то причине они интерпретируются как utf8 вместо cp1250. Независимо от того, какую кодировку я установил, мои комментарии остаются неизменными.
Я считаю, что должна быть какая-то другая отдельная настройка для кодировки кодировки подпрограмм, которую я пропустил. Я знаю, что это возможно, так как я сбросил его с экспортом данных рабочей среды, и как-то это сработало. К сожалению, я не смог проверить содержимое файла cnf, так как он сразу после этого исчезает.
Любая помощь приветствуется. Особенно тот, который исключает потенциальные преобразования скриптов.
Ваше здоровье
1 ответ
Отбросьте сохраненные процедуры,
SET NAMES
к нужной кодировке, повторно
CREATE
рутины.
Подтвердить с помощью
SHOW CREATE PROCEDURE name
и посмотрите на кодировку, указанную в конце.