MySQL中输错SQL命令后如何返回mysql>命令提示符?

问题原因
MySQL命令行客户端以分号;作为单条SQL语句的结束标识,如果你输入的语句存在末尾漏写分号、引号/反引号/括号/多行注释没有闭合的情况,客户端会判定你尚未完成当前语句输入,不会执行语句,也不会回到mysql>主提示符,会显示带特殊后缀的次级提示符等待你继续输入。
常见次级提示符对应原因:
->:当前语句还没输入结束标记,最常见的是漏写末尾分号'>:语句里的单引号'没有成对闭合">:语句里的双引号"没有成对闭合`>:语句里包裹库名/表名/字段名的反引号`没有成对闭合/*>:语句里的多行注释标记/*没有写对应的闭合标记*/
回到
mysql>提示符的操作 不管当前处于哪种次级提示符状态,只要你不想补全当前输错的语句,想直接废弃当前错误输入回到主提示符,执行以下两步即可:
- 输入
\c(反斜杠+小写字母c) - 按下回车键
操作完成后,当前未写完的错误语句会被直接取消,立刻回到mysql>主提示符状态,你就可以重新输入正确的SQL命令了。
补充说明:如果只是漏写了末尾分号,你也可以直接补打一个
;再按回车,语句会正常执行,执行完成后也会回到主提示符。但如果是引号、注释、反引号没闭合的情况,直接补分号不会生效,客户端依然会等待你补全对应的闭合标记,因此用\c取消是最通用、最稳妥的方案。
不建议直接按Ctrl+C退出,这个操作会直接断开当前MySQL连接,后续要操作需要重新登录,效率更低。
内容的提问来源于stack exchange,提问作者JH LEE
相关产品推荐
相关产品推荐

