Utf 8 使用UTF8时,控制台输出中的mysql表未对齐

Utf 8 使用UTF8时,控制台输出中的mysql表未对齐,utf-8,console,mysql,Utf 8,Console,Mysql,我喜欢使用mysqlclient。但当使用UTF-8时,控制台上的表未对齐: > set names utf8; > [some query] +--------+---------+---------------------------------+-----------------------------+----------+---------+-----------+-------+---------+-----------+ | RuleId | TaxonId | Not

我喜欢使用
mysql
client。但当使用UTF-8时,控制台上的表未对齐:

> set names utf8;
> [some query]
+--------+---------+---------------------------------+-----------------------------+----------+---------+-----------+-------+---------+-----------+
| RuleId | TaxonId | Note                            | NoteSci                     | MinCount | DayFrom | MonthFrom | DayTo | MonthTo | ExtraNote |
+--------+---------+---------------------------------+-----------------------------+----------+---------+-----------+-------+---------+-----------+
|    722 |   10090 | sedmihlásek malý              | Hippolais caligata          |        1 |       1 |         1 |    31 |      12 | NULL      |
|    727 |   10059 | Anseranas semipalmata           | husovec strakatý           |        1 |       1 |         1 |    31 |      12 | NULL      |
|    728 |   10062 | Cygnus atratus                  | labuť černá              |        1 |       1 |         1 |    31 |      12 | NULL      |
|    729 |   10094 | Anser cygnoides                 | husa labutí                |        1 |       1 |         1 |    31 |      12 | NULL      |
|    730 |   10063 | Tadorna cana                    | husice šedohlavá          |        1 |       1 |         1 |    31 |      12 | NULL      |
|    731 |   10031 | Cairina moschata f. domestica   | pižmovka domácí          |       20 |       1 |         1 |    31 |      12 | NULL      |
|    732 |   10088 | Cairina scutulata               | pižmovka bělokřídlá    |        1 |       1 |         1 |    31 |      12 | NULL      |
|    733 |   10087 | Anas sibilatrix                 | hvízdák chilský          |        1 |       1 |         1 |    31 |      12 | NULL      |
|    734 |   10077 | Anas platyrhynchos f. domestica | kachna domácí             |     1000 |       1 |         1 |    31 |      12 | NULL      |
|    735 |   10086 | Anas hottentota                 | čírka hottentotská       |        1 |       1 |         1 |    31 |      12 | NULL      |
|
这显然是因为mysql客户端将使用不考虑UTF-8字符的字符串长度来计算列的宽度,因此每个重音字符正好缺少一个空格(因为它们实际上需要两个字节)


您知道此问题可能的解决方法吗?

使用以下选项运行您的
mysql
客户端:


用户
数据库
应替换为实际凭证数据)

奇怪的是,只有这一点起作用,
显示变量
中的变量都没有这种效果!我试图
将它们全部设置为
utf8
,但没有效果!为什么奇怪?变量(通常)与客户端无关——它们都是服务器变量。因此,要更改客户端行为-您需要应用客户端选项nope,许多变量会影响客户端显示数据的方式(在哪个字符集中)。我猜这些被称为连接变量,不是所有的都是服务器变量。是的,这就是为什么我在一般情况下添加了。你也看到,奇怪的是,一些客户端行为是由变量处理的,而一些不是。。。
mysql -uUSER -p DATABASE --default-character-set=utf8