Представления MySQL, содержащие таблицы с разными (?) Кодировками символов

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

Обе таблицы используют кодировку UTF8 с параметрами сортировки utf8_general_cl.

Проблема в том, что одна база данных - utf8, а другая - latin1 с установленным latin1_swedish_cl.

В результате символы с диакритическими знаками и тому подобное приходят из таблицы в базе данных latin1, несмотря на то, что обе таблицы имеют формат utf8.

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

Могу ли я конвертировать строки на лету? Я пробовал convert(), но, похоже, это не имело никакого эффекта.


person GordonM    schedule 04.03.2011    source источник


Ответы (1)


Попробуй это

convert(convert(convert(COL using latin1) using binary) using utf8)
person ajreal    schedule 04.03.2011
comment
Спасибо за ответ, но без радости. Это приводит к тому, что строки усекаются до первого символа, отличного от ascii. - person GordonM; 04.03.2011
comment
На самом деле, дальнейшие эксперименты с этим подходом в конечном итоге дали удовлетворительные результаты, так что спасибо за помощь. - person GordonM; 07.03.2011