如何从命令行清除未执行的MySQL查询?

Log*_*gan 76 mysql command-line

假设您正在向MySQL数据库中键入命令行查询,您需要取消并重新开始.从bash shell中你可以输入ctrl-c并获得一个新提示.在MySQL中,ctrl-c将退出客户端并返回shell.

例如,我输入了一个长而复杂的SELECT语句,但我还没有回复.我意识到我不想发送命令,但我希望在屏幕上显示命令,以便我可以将它用作参考.我想在不退出MySQL的情况下纾困.有任何想法吗?

关键点:该命令尚未执行.

rua*_*akh 103

类型\c.

启动MySQL时,您可能会看到以下消息:

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
Run Code Online (Sandbox Code Playgroud)

它所指的"缓冲区"是命令/查询缓冲区.

  • 只是一个小问题:你必须在任何分号终止符之前执行此操作. (6认同)

unt*_*ill 42

首先输入Ctrl+ a,然后输入Ctrl+ k.

  • 但OP指定,"我希望在屏幕上显示命令,以便我可以将其用作参考." (4认同)

bla*_*erz 17

使用以下快捷方式之一删除当前行:

  • 键入Ctrl+ u可删除从光标返回到行开头的所有内容
  • 键入Ctrl+ k可删除从光标到行尾的所有内容

否则,如\c当前行的末尾已指示类型(clear命令的快捷方式),然后按Enter.