1

Когда я делаю select в MySQL на столбце в терминале на Mac, это выглядит так:

+-------------------+
| my_iso8859_column |
+-------------------+
|.. .......         |
| ..... ....        |
| .. .......        |
| ...... ...        |
| ..... ....        |
+-------------------+

(Примечание: я намеренно заменил фактический контент точками.)

Однако, если я использую SET NAMES UTF8 и затем выбираю в столбце UTF8, все символы правого поля появляются в неправильном месте.

+---------------------+
| my_utf8_column      |
+---------------------+
|.. .......       |
| ..... ....      |
| .. .......       |
| .....               |
| .... ....         |
+---------------------+

Как это исправить?

(Очевидно, MySQL неправильно вычисляет длину строки, и поэтому выравнивание по правому краю становится неправильным.)

(Я не знаю, является ли это ошибкой в MySQL, настройкой UNIX или настройкой терминала. Настройки терминала: «xterm-256color» и «Unicode (UTF-8)».)

0