有时我忘了以分号“;”结束我的SQL查询在我的Mac终端。发生这种情况时,终端在开头设置->
,我无法退出或运行任何其他SQL命令。
我该如何退出?
答案 0 :(得分:20)
你不知道mysql终端的5种不同的报价模式。我建议你复习一下:
https://dev.mysql.com/doc/refman/5.0/en/entering-queries.html
以上链接的相关部分:
下表显示了您可能看到的每个提示,并总结了它们对mysql所处状态的含义。
Prompt Meaning
mysql> Ready for new command.
-> Waiting for next line of multiple-line command.
'> Waiting for next line, waiting for completion of a string
that began with a single quote (“'”).
"> Waiting for next line, waiting for completion of a string
that began with a double quote (“"”).
`> Waiting for next line, waiting for completion of an
identifier that began with a backtick (“`”).
/*> Waiting for next line, waiting for completion of a
comment that began with /*.
在MySQL 5.0系列中,/*>
提示符已在MySQL 5.0.6中实现。
当您打算在一行上发出命令时,通常会发生多行语句,但忘记了终止分号。在这种情况下,mysql等待更多输入:
mysql> SELECT USER()
->
如果您遇到这种情况(您认为自己已经输入了声明,但唯一的响应是 - >提示),则很可能mysql正在等待分号。如果您没有注意到提示告诉您的内容,您可能会在那里坐一会儿,然后才意识到您需要做什么。输入分号以完成语句,mysql执行它:
TLDR:
要退出,请键入\c
,;
,ctrl-c
或ctrl-d
。如果所有这些都失败了,请输入'<enter>
,"<enter>
或*/<enter>
答案 1 :(得分:5)
只需输入\ c即可清除当前的输入语句
答案 2 :(得分:4)
只需输入“;”并按Enter键。在命令行模式下,您可以使用任意数量的输入行来完成查询。所以你可以这样做:
>SELECT
>*
>FROM
>table
>WHERE
>id=5
>;
如果你愿意的话。
答案 3 :(得分:4)
可以尝试为我工作的"\q"
答案 4 :(得分:0)
使用以下键盘快捷键之一: Ctrl + C 或 Ctrl + D 。
答案 5 :(得分:-1)
使用ctrl + c,它将转到下一行。