如何退出MySQL命令提示符?
我已经安装了MySQL。现在我卡在了MySQL命令提示符里面。我是这样运行MySQL的。
C:\>mysql.exe
mysql>
然后我输入了一些无效的命令,比如:
mysql> /version
->
无论我输入什么,我都无法退出MySQL命令行/终端。例如
exit
CtrlC
CtrlD
quit
Ctrl\
CtrlZ
bye
我该如何将MySQL终端退出到默认终端?
我已经安装了MySQL。现在我卡在了MySQL命令提示符里面。我是这样运行MySQL的。
C:\>mysql.exe
mysql>
然后我输入了一些无效的命令,比如:
mysql> /version
->
无论我输入什么,我都无法退出MySQL命令行/终端。例如
exit
CtrlC
CtrlD
quit
Ctrl\
CtrlZ
bye
我该如何将MySQL终端退出到默认终端?
为了补充另一个答案,你可以简单地使用分号结束当前无效的查询。
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>
当然,这两个选项都假定你没有开头引号。如果您有,您必须先用结束引号来结束它。
因为你已经告诉MySQL将你的退出命令解释为有效输入。
让MySQL终端难以理解的是,MySQL终端有单引号、双引号和普通模式的不同模式。
所以,要想退出mysql输入模式,你必须要做这些步骤。
1.退出双引号模式。 2. 脱离单引号模式。 3. 退出mysql模式。 4. 退出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在哪一个宇宙中不会停止程序而不管模式?我们可能永远不会知道。巴津加。
SQL支持以多行方式输入查询。只有当你输入分号;
时,查询才会被执行。你还需要终止查询中的任何字符串。
如果你输入了一个未结尾的查询,它就不会运行,这就是为什么键入exit不起作用的原因–MySQL认为你还在查询中。命令提示符会改变,以显示需要什么输入才能终止查询。例如,可能需要一个引号或双引号。这很强大,命令提示符很有帮助,但我发现它很混乱,直到我读了这个帖子上的答案和评论。 在这里阅读规范
“顶层 "提示符是。
mysql>
如果你看到这个,那么你可以输入一个命令,以 ; 结束,然后按回车键。
如果你看到这样的提示。
'>
">
->
那么MySQL正在等待你用引号结束一个字符串 或者用分号结束一个查询。
下面是如何告诉MySQL取消你那乱七八糟的未结束查询,让你回到主提示。
\c
我认为这比终止并运行你的非预期查询要安全得多。在这之后,你应该又回到了>提示,并且可以退出。
exit
\q
对我来说是个不错的选择。使用Ubuntu终端。
你可以尝试使用Ctrl+Shift+D来逃避。