您现在的位置是:首页 > 正文

mysql输入一直显示”>_sql 一直显示`>

2024-02-29 12:09:50阅读 0

展开全部

下表显示了您可能看到的每个提示,并总结了它们对于mysql所处状态的含义。

提示符         含义

mysql>      准备好接受32313133353236313431303231363533e58685e5aeb931333431333966新查询

->              等待多行查询的下一行

'>              等待下一行,等待以单引号(')开头的字符串完成

">             等待下一行,等待以双引号(")开头的字符串完成

`>             等待下一行,等待以反引号(`)开头的标识符的完成

/*>           等待下一行,等待以/*开头的注释的完成

当您打算在一行上发出查询,但忘记了终止分号时,通常会出现多行语句。 在这种情况下,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 

'>

如果您输入这个SELECT语句,然后按Enter并等待结果,什么也不会发生。不要奇怪为什么这个查询要花这么长时间,请注意'>提示符提供的线索。它告诉您 mysql 希望看到未终止字符串的其余部分。(你看到语句中的错误了吗?字符串'Smith缺少第二个单引号。)

这时候,你该怎么做?最简单的方法是取消查询。但是,在这种情况下,您不能只键入\c,因为 mysql 会将其解释为正在收集的字符串的一部分。相反,先输入结束引号字符(这样 mysql 知道您已经完成了字符串),然后输入\c:mysql> SELECT * FROM my_table WHERE name = 'Smith AND age 

'> '\c

mysql>

提示变为mysql>,表示 mysql 已准备好接受新的查询。

`>提示符类似于'>和">提示符,但表示您已经开始但未完成反引号引用的标识符。

了解'>、">和 `> 提示符的含义是很重要的,因为如果您错误地输入了一个未终止字符串,那么您输入的任何其他行似乎都会被mysql忽略——包括含有QUIT的行。这可能非常令人困惑,特别是如果您不知道在取消当前查询之前需要提供终止引用。

网站文章