`

MySQL 无法退出命令行中的SQL输入模式

阅读更多

mysql> insert into core_user(login_name,real_name,password,email,create_time,is_disab…..

‘> quit
‘> exit
‘> ;
‘> \
‘> \c
‘> /c

终止批处理操作吗(Y/N)? y

遇到上面的情况无法终于sql编辑,最后没办法ctrl+c,强退了mysql ,后来找了一下官方文档,上面是有说明的,前面的提示符很重要,要用 ‘\c 退出
————————以下官方的说明-------------

这询问说明mysql的几个方面:

· 一个命令通常由SQL语句组成,随后跟着一个分号。(有一些例外不需要分号。早先提到的QUIT是一个例子。后面我们将看到其它的例子。)

· 当发出一个命令时,mysql将它发送给服务器并显示执行结果,然后显示另一个mysql>显示它准备好接受其它命令。

· mysql用表格(行和列)方式显示查询输出。第一行包含列的标签,随后的行是查询结果。通常,列标签是你取自数据库表的列的名字。如果你正在检索一个表达式而非表列的值(如刚才的例子),mysql用表达式本身标记列。

· mysql显示返回了多少行,以及查询花了多长时间,它给你提供服务器性能的一个大致概念。因为他们表示时钟时间(不是 CPU 或机器时间),并且因为他们受到诸如服务器负载和网络延时的影响,因此这些值是不精确的。(为了简洁,在本章其它例子中不再显示“集合中的行”。)

能够以大小写输入关键词。下列查询是等价的:

mysql> SELECT VERSION(), CURRENT_DATE;
mysql> select version(), current_date;
mysql> SeLeCt vErSiOn(), current_DATE;
这是另外一个查询,它说明你能将mysql用作一个简单的计算器:

mysql> SELECT SIN(PI()/4), (4+1)*5;
+——————+———+
| SIN(PI()/4) | (4+1)*5 |
+——————+———+
| 0.70710678118655 | 25 |
+——————+———+
1 row in set (0.02 sec)
至此显示的命令是相当短的单行语句。你可以在一行上输入多条语句,只需要以一个分号间隔开各语句:

mysql> SELECT VERSION(); SELECT NOW();
+—————–+
| VERSION() |
+—————–+
| 5.1.2-alpha-log |
+—————–+
1 row in set (0.00 sec)

+———————+
| NOW() |
+———————+
| 2005-10-11 15:15:00 |
+———————+
1 row in set (0.00 sec)
不必全在一个行内给出一个命令,较长命令可以输入到多个行中。mysql通过寻找终止分号而不是输入行的结束来决定语句在哪儿结束。(换句话说,mysql接受自由格式的输入:它收集输入行但直到看见分号才执行。)

这里是一个简单的多行语句的例子:

mysql> SELECT
-> USER()
-> ,
-> CURRENT_DATE;
+—————+————–+
| USER() | CURRENT_DATE |
+—————+————–+
| jon@localhost | 2005-10-11 |
+—————+————–+
在这个例子中,在输入多行查询的第一行后,要注意提示符如何从mysql>变为->,这正是mysql如何指出它没见到完整的语句并且正在等待剩余的部分。提示符是你的朋友,因为它提供有价值的反馈,如果使用该反馈,将总是知道mysql正在等待什么。

如果你决定不想执行正在输入过程中的一个命令,输入\c取消它:

mysql> SELECT
-> USER()
-> \c
mysql>
这里也要注意提示符,在你输入\c以后,它切换回到mysql>,提供反馈以表明mysql准备接受一个新命令。

下表显示出可以看见的各个提示符并简述它们所表示的mysql的状态:

提示符

含义

mysql>

准备好接受新命令。

->

等待多行命令的下一行。

‘>

等待下一行,等待以单引号(“’”)开始的字符串的结束。

“>

等待下一行,等待以双引号(“””)开始的字符串的结束。

`>

等待下一行,等待以反斜点(‘`’)开始的识别符的结束。

/*>

等待下一行,等待以/*开始的注释的结束。

当你打算在一个单行上发出一个命令时,通常会“偶然”出现多行语句,但是没有终止分号。在这种情况中,mysql等待进一步输入:

mysql> SELECT USER()
->
如果出现这种情况(你认为输完了语句,但是只有一个->提示符响应),很可能mysql正在等待分号。如果你没有注意到提示符的提示,在意识到你需要做什么之前,你可能会呆坐一会儿。输入一个分号完成语句,mysql将执行:

mysql> SELECT USER()
-> ;
+—————+
| USER() |
+—————+
| jon@localhost |
+—————+
在字符串收集期间将出现 ‘> 和 “> 提示符(提示MySQL正等待字符串的结束)。在MySQL中,可以写由‘’’或‘”’字符括起来的字符串 (例如,’hello’或”goodbye”),并且mysql允许输入跨越多行的字符串。当看到一个 ‘> 或 “> 提示符时,这意味着已经输入了包含以‘’’或‘”’括号字符开始的字符串的一行,但是还没有输入终止字符串的匹配引号。这显示你粗心地省掉了一个引号字符。例如:

mysql> SELECT * FROM my_table WHERE name = ‘Smith AND age < 30;
'>
如果你输入SELECT语句,然后按Enter(回车)键并等待结果,什么都没有出现。不要惊讶,“为什么该查询这么长呢?”,注意”>提示符提供的线索。它告诉你mysql期望见到一个未终止字符串的余下部分。(你看见语句中的错误吗?字符串”Smith丢掉了第二个引号。)

走到这一步,你该做什么?最简单的是取消命令。然而,在这种情况下,你不能只是输入\c,因为mysql作为它正在收集的字符串的一部分来解释它!相反,应输入关闭的引号字符(这样mysql知道你完成了字符串),然后输入\c:

mysql> SELECT * FROM my_table WHERE name = ‘Smith AND age < 30;
'> ‘\c
mysql>
提示符回到mysql>,显示mysql准备好接受一个新命令了。

`> 提示符类似于 ‘> 和”> 提示符,但表示你已经开始但没有结束以`> 开始的识别符。

知道’>和”>提示符的含义很重要,因为如果你错误地输入一个未终止的字符串,任何后面输入的行将要被mysql忽略–包括包含QUIT的行!这可能令人相当困惑,特别是如果取消当前命令前还不知道你需要提供终止引号。

 

转自:http://www.anbob.com/archives/579.html

分享到:
评论

相关推荐

    MySql无法退出Sql命令行编辑.doc

    - **退出命令**:在MySQL命令行中,可以通过输入`quit`或`exit`来退出命令行界面。 - **特殊字符**:使用`\c`可以取消当前正在输入的命令。 #### 二、命令行提示符及其意义 - **`mysql&gt;`**:表示MySQL客户端已经...

    如何使用mysql命令行

    要退出MySQL命令行,输入`QUIT;`或`EXIT;`。 以上就是使用MySQL命令行进行基本的数据库操作步骤。通过熟练掌握这些命令,你可以高效地管理MySQL数据库中的数据。参考《如何使用mysql命令行_百度经验.html》文件,可...

    Mysql数据库常用命令行大全

    在IT领域,尤其是在数据库管理与开发中,熟练掌握MySQL数据库的命令行操作是必不可少的技能。根据提供的文件信息,我们将深入解析与总结一系列MySQL数据库的常用命令行操作,旨在为数据库管理员、开发者以及任何对...

    Mysql练习2:命令行连接并操作MySQL数据库.zip

    在本实践教程中,我们将深入探讨如何通过命令行界面连接并操作MySQL数据库。MySQL是一种流行的开源关系型数据库管理系统,广泛应用于各种规模的应用程序。通过掌握命令行操作,开发者可以更高效地管理数据库,进行...

    mysql SQL命令行

    在本文中,我们将深入探讨MySQL SQL命令行的基本使用、主要功能以及一些常用的SQL语句,帮助你快速掌握MySQL数据库管理的核心技能。 一、MySQL命令行界面 在开始之前,你需要确保已经安装了MySQL服务器和客户端。...

    Mysql-命令行篇

    本文将详述“Mysql-命令行篇”的核心知识点,包括如何通过命令行界面操作MySQL,以及一些实用的SQL语句和技巧。 一、MySQL命令行基础 1. 启动与退出MySQL服务: 在终端或命令提示符下,输入`mysql -u 用户名 -p`...

    mysql命令行脚本执行操作示例

    在当今的IT行业中,数据库管理系统是不可或缺的工具,MySQL作为其中应用广泛的开源数据库,其命令行界面提供了强大的操作能力。本文档将详细介绍如何通过命令行脚本在MySQL中执行操作,包括连接、操作数据库、以及...

    mysql DOS命令行

    - **退出MySQL**: 在MySQL命令行环境中,可以通过以下几种方式退出: - 使用`quit`命令。 - 使用`exit`命令。 - 直接按`Ctrl + C`两次快速退出。 #### 二、数据库操作 - **创建数据库**: 可以使用`CREATE ...

    MySQL命令行

    如果登录后想退出MySQL命令行界面,可以使用`exit`命令。 #### 三、权限管理 在MySQL中,权限管理至关重要,涉及到用户账号的创建、权限的授予与撤销。以下是一些关键命令: - **创建用户并授权**:例如,为了使...

    centos7 mysql登录退出命令.txt

    在 MySQL 命令行界面下,可以直接输入 `exit` 命令来退出当前会话。 ```sql mysql&gt; exit; ``` ##### 2. 使用 `quit` 命令退出 除了 `exit` 外,还可以使用 `quit` 命令退出。 ```sql mysql&gt; quit; ``` ##### 3. ...

    MYSQL导入导出.sql文件

    - 退出MySQL命令行界面,可以通过`exit;`或`quit;`命令实现。 - **导入SQL文件**: - 使用命令`mysql -h hostname -u username -p dbname &lt; path\filename.sql`,其中`dbname`是之前创建的数据库名,`path\filename...

    MySQL数据库常用命令行整理(表格)

    MySQL常用命令行 1、登陆、退出MySQL 命令行 作用 mysql -u -p 本地登陆数据库服务器。 如:mysql -uroot -p123456 mysql -h -u -p 远程登陆数据库服务器。 如:mysql -h127.00.000 -uroot -p...

    MySQL导入sql_文件的5大步骤

    #### 一、MySQL的命令行模式的设置与配置 在开始导入或导出SQL文件之前,首先需要确保能够顺利地通过命令行访问MySQL服务器。这通常涉及到环境变量的配置,特别是对于Windows操作系统用户来说。 **步骤:** 1. **...

    MySQL导入sql文件

    本文将深入探讨如何通过命令行方式在MySQL中导入SQL文件,包括环境配置、命令行操作、数据库与表的管理,以及解决导入大文件时可能遇到的限制问题。 #### 一、MySQL命令行模式的设置 在开始导入SQL文件之前,确保...

    window系统下,如何在命令行进入mysql数据库.pdf

    3. 连接到MySQL服务器:在命令行中输入以下命令: ``` mysql -h localhost -uroot -p ``` 这里,`-h localhost`表示连接本地的MySQL服务器,`-u root`指定使用root用户登录,`-p`后面跟的是用户的密码。按回车键...

    运行cmd状态下MySQL导入导出.sql文件

    - 退出MySQL命令行,然后在CMD中使用`mysql`命令导入SQL文件。例如,从`E:\mysql\mydb2.sql`文件导入数据至`mydb2`数据库: ``` mysql -h localhost -u root -p mydb2 &lt; E:\mysql\mydb2.sql ``` #### 五、解决...

    如何用命令行进入mysql具体操作步骤

    例如,如果你的MySQL安装在`C:\Program Files\MySQL\MySQL Server 8.0\bin`,在命令行输入: ``` cd "C:\Program Files\MySQL\MySQL Server 8.0\bin" ``` 接着,你可以使用以下命令登录MySQL: ``` mysql -u ...

    MySQL数据库实验 使用命令行工具创建数据库和表.pdf

    在本实验中,我们将深入学习如何使用MySQL 8.0 Command Line Client命令行工具来创建数据库和表。这个实验特别适合初学者,旨在让你熟练掌握SQL语言的基本操作,包括创建、查看和删除数据库以及数据表。 首先,实验...

Global site tag (gtag.js) - Google Analytics