如何退出 MySQL 命令提示符?

Eri*_*ski 48 windows mysql command-line exit

我已经安装了 MySQL。现在我被困在 MySQL 命令提示符中。我像这样运行 MySQL:

C:\>mysql.exe
mysql>
Run Code Online (Sandbox Code Playgroud)

然后我输入一些这样的无效命令:

mysql> /version
    ->
Run Code Online (Sandbox Code Playgroud)

无论我输入什么,我都无法退出 MySQL 命令行/终端。例如:

  • exit

  • CtrlC

  • CtrlD

  • quit

  • Ctrl\

  • CtrlZ

  • bye

如何退出 MySQL 终端到默认终端?

Pac*_*ier 41

要添加到另一个答案,您可以简单地使用分号结束当前无效的查询:

mysql> /version
    -> ;
ERROR 1064 (42000): You have an error in your SQL syntax.........
mysql> exit
Bye

c:\mysql\bin>
Run Code Online (Sandbox Code Playgroud)

或者使用\G(应该使行垂直显示):

mysql> /version
    -> ;
ERROR 1064 (42000): You have an error in your SQL syntax.........
mysql> exit
Bye

c:\mysql\bin>
Run Code Online (Sandbox Code Playgroud)

当然,这两个选项都假设您没有开盘价。如果你这样做了,你必须首先用一个结束引用来结束它。


Eri*_*ski 23

为什么 ctrl-c 在 Windows 中不退出 mysql 输入模式?

因为您已经告诉 MySQL 将您的退出命令解释为有效输入。

使 MySQL 终端难以理解的是,单引号、双引号和普通模式有不同的模式。

因此,要退出 mysql 输入模式,您必须执行以下步骤:

  1. 退出双引号模式。
  2. 退出单引号模式。
  3. 退出mysql模式。
  4. 退出 mysql 回到默认终端。

最基本的例子:

mysql> /version
    ->
    ->
    ->
    -> \c
mysql> exit
Bye

C:\>
Run Code Online (Sandbox Code Playgroud)

在上面的示例中,您从未离开过默认模式,因此退出命令可以正常工作。

示例 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:\>
Run Code Online (Sandbox Code Playgroud)

当您处于单引号模式或双引号模式时,不会考虑任何转义序列。EvenCtrl-CCtrl-D在这些模式中被忽略。

在 26 个宇宙中的哪一个宇宙中,无论模式如何,Ctrl-C 都不会停止程序?我们可能永远不知道。巴津加。

  • 我猜引号会逃避事物,并且正在等待更多输入。当您可能在数据库中存储诸如“exit”之类的内容时,这实际上是有意义的 (2认同)

小智 7

\q为我做这项工作。使用 Ubuntu 终端。


Lit*_*ain 4

SQL 支持以多行形式输入的查询。只有输入分号时;才会执行查询。您还需要终止查询中的所有字符串。

请注意使用文字处理包中的字符串复制和粘贴查询 - 引号可能已替换为“智能引号”,这会弄乱您的查询。

如果您输入了未终止的查询,它不会运行,这就是为什么键入 exit 不起作用 - MySQL 认为您仍在查询中。命令提示符会更改以显示终止查询所需的输入。例如,可能需要引号或双引号。这很强大,命令提示符很有帮助,但我发现它很混乱,直到我阅读了该线程上的答案和评论。

阅读此处的规范

“顶级”提示是:

mysql>

如果你看到这个,那么你可以输入一个命令,以 ; 结尾。并按回车键。

如果你看到这样的提示:

'>
">
->
Run Code Online (Sandbox Code Playgroud)

然后 MySQL 正在等待您用引号终止字符串或用分号终止查询。

以下是如何告诉 MySQL 取消混乱的未终止查询并使您返回主提示符:

\c
Run Code Online (Sandbox Code Playgroud)

我认为这比终止并运行您的意外查询更安全。之后,您应该返回 > 提示符并可以使用以下命令退出:

exit
Run Code Online (Sandbox Code Playgroud)