我已经安装了 MySQL。现在我卡在 MySQL 命令提示符中。我像这样运行 MySQL:
C:\>mysql.exe
mysql>
然后我输入一些无效的命令,例如:
mysql> /version
->
无论我输入什么,我都无法退出 MySQL 命令行/终端。例如:
exit
CtrlC
CtrlD
quit
Ctrl\
CtrlZ
bye
如何退出 MySQL 终端到默认终端?
答案1
SQL 支持以多行形式输入查询。只有输入分号时;
才会执行查询。您还需要终止查询中的任何字符串。
注意复制和粘贴来自文字处理包的字符串查询 - 引号可能已被“智能引号”替换,这会弄乱您的查询。
如果您输入了未终止的查询,则它不会运行,这就是为什么输入 exit 不起作用的原因 - MySQL 认为您仍在查询中间。命令提示符会发生变化以显示终止查询所需的输入。例如,可能需要引号或双引号。这很强大,命令提示符很有用,但我发现它很令人困惑,直到我阅读了此线程的答案和评论。
“顶级”提示是:
mysql>
如果看到此消息,则可以输入一个命令,以 ; 结尾,然后按回车键。
如果你看到这样的提示:
'>
">
->
然后 MySQL 等待您用引号终止字符串或用分号终止查询。
下面说明了如何告诉 MySQL 取消混乱的未终止查询并将您带回到主提示符:
\c
我认为这比终止并运行意外查询更安全。此后,您应该返回到 > 提示符并可以使用以下命令退出:
exit
答案2
要添加其他答案,您可以简单地使用分号结束当前无效查询:
mysql> /version
-> ;
ERROR 1064 (42000): You have an error in your SQL syntax.........
mysql> exit
Bye
c:\mysql\bin>
或者使用\G
(这应该使行垂直显示):
mysql> /version
-> ;
ERROR 1064 (42000): You have an error in your SQL syntax.........
mysql> exit
Bye
c:\mysql\bin>
当然,这两种选择都假设你没有开场引语。如果有,你必须先用结尾引语来结束它。
答案3
为什么在Windows中ctrl-c不能退出mysql输入模式?
因为您已经告诉 MySQL 将退出命令解释为有效输入。
MySQL 终端难以理解的原因是它有单引号、双引号和普通模式等不同的模式。
因此,要退出 mysql 输入模式,您必须执行以下步骤:
- 退出双引号模式。
- 退出单引号模式。
- 退出mysql模式。
- 退出mysql回到默认终端。
最基本的例子:
mysql> /version
->
->
->
-> \c
mysql> exit
Bye
C:\>
在上面的例子中,您从未离开默认模式,因此退出命令可以正常工作。
示例 2(这就是让您困惑的地方)。
mysql> hello
->
-> look dash is on the left"
"> In doublequote mode now, because doublequote above
"> adding another doublequote breaks you out: "
-> look a single quote ' here
'> in single quote mode now.
'> get out, in, then out again with three singlequotes: '''
-> now it will listen to your escape code: \c
mysql> exit
Bye
C:\>
当您处于单引号模式或双引号模式时,不会考虑任何转义序列。在这些模式下,甚至Ctrl-C和也会被忽略。Ctrl-D
在 26 个宇宙中,哪个宇宙中 Ctrl-C 不会停止程序,无论何种模式?我们可能永远不知道。Bazinga。
答案4
Ctrl你可以尝试使用+ Shift+来退出D