众所周知,\ G选项将命令发送到MySQL服务器以执行该命令,并借助分号(;)由MySQL确定语句的结尾。还众所周知,它们都具有不同的结果集格式。
现在,如果我们将在MySQL语句中同时使用这两个代码,则将基于MySQL首先遇到它们中的一个来产生输出。对于其他人,MySQL将产生一个错误。通过以下示例可以理解-
mysql> Select CURDATE();\G +------------+ | CURDATE() | +------------+ | 2017-11-06 | +------------+ 1 row in set (0.00 sec) ERROR: No query specified
在上面的MySQL语句中,我们首先使用分号(;),然后使用\ G选项,因此我们以表格格式接收输出。之后,MySQL引发错误,因为我们没有为\ G选项指定任何查询。
mysql> Select CURDATE()\G; *************************** 1. row *************************** CURDATE(): 2017-11-06 1 row in set (0.00 sec) ERROR: No query specified
在上面的MySQL语句中,我们首先使用\ G选项,然后使用分号(;),因此我们收到了垂直格式的输出。之后,MySQL抛出错误,因为我们没有为分号(;)指定任何查询。