如果在一个MySQL语句中同时使用G和分号(;)作为终止符会发生什么?
我们知道,\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抛出错误,因为我们没有为分号(;)指定任何查询。
广告