如何将用于执行 MySQL 语句的内置命令(g 和 G)与终止符分号(;)结合使用,以获取输出而不会出现任何错误?


众所周知,内置命令(\G 和 \g)将命令发送到 MySQL 服务器以执行,并且借助分号(;),MySQL 可以确定语句的结束位置。 众所周知,它们两者具有不同的结果集格式。 为了将它们结合起来并获取结果而不会出错,我们需要在一个语句中编写两个查询,一个查询使用 \G 或 \g,另一个查询在末尾使用分号(;)。

示例

组合 \G 和分号(;) -

mysql> Select * from student\G select * from ratelist;
*************************** 1. row ***************************
  Name: Gaurav
RollNo: 100
 Grade: B.tech
*************************** 2. row ***************************
  Name: Aarav
RollNo: 150
 Grade: M.SC
*************************** 3. row ***************************
  Name: Aryan
RollNo: 165
 Grade: M.tech

3 rows in set (0.00 sec)
+----+------+-------+
| Sr | Item | Price |
+----+------+-------+
| 1  | A    | 502   |
| 2  | B    | 630   |
| 3  | C    | 1005  |
| 4  | h    | 850   |
| 5  | T    | 250   |
+----+------+-------+
5 rows in set (0.00 sec)

上面示例中的 MySQL 语句首先在第一个查询后遇到 \G,并根据它以垂直格式抛出结果集,然后在第二个查询后遇到分号(;)作为终止符,并根据它以表格格式抛出结果集。

示例

组合 \g 和分号(;) -

mysql> Select * from student\g select * from ratelist;
+--------+--------+--------+
| Name   | RollNo | Grade  |
+--------+--------+--------+
| Gaurav | 100    | B.tech |
| Aarav  | 150    | M.SC   |
| Aryan  | 165    | M.tech |
+--------+--------+--------+

3 rows in set (0.00 sec)
+----+------+-------+
| Sr | Item | Price |
+----+------+-------+
| 1  | A    | 502   |
| 2  | B    | 630   |
| 3  | C    | 1005  |
| 4  | h    | 850   |
| 5  | T    | 250   |
+----+------+-------+
5 rows in set (0.00 sec)

在上面的示例中,MySQL 语句首先在第一个查询后遇到 \g,并根据它以表格格式抛出结果集,然后在第二个查询后遇到分号(;)作为终止符,并根据它也以表格格式抛出结果集。

更新于: 2020-06-22

86 次浏览

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告