【问题标题】:Too many dashes in mariadb outputsmariadb 输出中的破折号太多
【发布时间】:2019-08-09 14:56:04
【问题描述】:

我在 Solus OS 上使用 mariadb 服务器。 mariadb 命令的输出会打印许多额外的符号。

相同的命令在运行 mysql 的 Windows 操作系统上提供完美的输出。

desc class,其中“类”是我的数据库输出中的一个表:(见下图)

这个输出前面有很多行相同的符号。

show databases的输出:

+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Database                                                                                                                                                                                         |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| information_schema                                                                                                                                                                               |
| mysql                                                                                                                                                                                            |
| performance_schema                                                                                                                                                                               |
| snehit                                                                                                                                                                                           |
+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
4 rows in set (0.000 sec)

可以看到输出了很多破折号

我可以使用\G 后缀垂直显示输出。当我运行desc class \G 时,输出为:

*************************** 1. row ***************************
  Field: name
   Type: varchar(30)
   Null: NO
    Key: 
Default: NULL
  Extra: 
*************************** 2. row ***************************
  Field: class_id
   Type: int(10) unsigned
   Null: NO
    Key: PRI
Default: NULL
  Extra: auto_increment
2 rows in set (0.001 sec)

但是,我想以水平表格样式显示输出,正如我所提到的,输出的破折号过多,这使得输出无法读取。

那么,我该如何解决这个问题以删除输出中多余的破折号以使其可读?

编辑: MySQL command line formatting with UTF8有一个相关问题

但是,该问题涉及特殊字符的错误输出。我的问题涉及输出的破折号过多

【问题讨论】:

标签: mysql mariadb


【解决方案1】:

A 计划:向上滚动。有趣的东西就在那里。

B 计划:不要使用;,而是使用\G

有什么问题?您会看到围绕结果集绘制的“框”。然而,有些列太宽了,以至于它会包裹,甚至包裹很多次。

更具体地说,不要使用desc tablename;,使用SHOW CREATE TABLE tablename\G——它会更具描述性。

CREATE TABLE 的文本是单列,但嵌入了行终止符(如果您使用多行)。 mysql 将表定义视为一个非常宽的列。但是“终端”正在识别行终止符并很好地显示它。

【讨论】:

  • 使用 \G 为我解决了这个问题。谢谢。
猜你喜欢
  • 1970-01-01
  • 2021-05-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-17
  • 2016-06-06
  • 1970-01-01
相关资源
最近更新 更多