有时我忘记用分号“;”结束我的 SQL 查询 在我的 Mac 终端中。发生这种情况时,终端会->
在开头设置 a,我无法退出或运行任何其他 SQL 命令。
我该如何退出?
您不知道 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>
只需键入 \c 即可清除当前输入语句
只需输入“;” 然后按回车。在命令行模式下,您可以使用任意数量的输入行来完成查询。因此,您可以执行以下操作:
>SELECT
>*
>FROM
>table
>WHERE
>id=5
>;
如果你喜欢。
你可以试试"\q"
这对我有用
使用以下任一键盘快捷键:Ctrl+C或Ctrl+D。这些可用于立即退出在命令提示符下运行的任何程序。
使用 ctrl+c 它将转到下一行。