为什么我能';是否移动到下一个命令行或在MySQL中运行查询?

为什么我能';是否移动到下一个命令行或在MySQL中运行查询?,mysql,Mysql,我尝试在我的SQL server 5.0中运行此功能,然后突然->更改为“> 我尝试运行的代码是:- mysql> insert into gabs -> VALUES -> ( -> 10,100,98,17,'M','Delhi','Sunil' -> ), -> ( -> 2,101,95,17,'F','Pune','Neha' -> ), -> ( -> 15,400,90,17,'M',null,'Amit

我尝试在我的SQL server 5.0中运行此功能,然后突然
->
更改为
“>
我尝试运行的代码是:-

mysql> insert into gabs
-> VALUES
-> (
->    10,100,98,17,'M','Delhi','Sunil'
-> ),
-> (
->    2,101,95,17,'F','Pune','Neha'
-> ),
-> (
->    15,400,90,17,'M',null,'Amit'
-> ),
-> (
->     6,401,98,18,'M','Haryana','Parth'
-> ),
-> (
->     17,403,98,18,'F',"Chennai','Kamal'
"> ),
"> (
">     18,201,95,18,'M','Delhi','Chita'
"> );
"> \c
">
"> \c;
"> /c
"> /c;
">

我甚至使用了clear it,但每次它都只是添加了一行新行,我不知道这里发生了什么。

正如@AkhileshMishra提到的,单个
导致了问题,用
替换它将解决您的问题

关于“移动到下一个命令行”,psql在执行之前不断添加SQL查询,直到找到一个逻辑端点。在您的例子中,您使用了single
,它一直在尝试为其查找一个结束语
。这就是为什么您不能运行clear命令或任何其他命令的原因

您可以尝试放置一个
来显示您已经完成了查询的编写,然后psql将识别查询中的语法错误并简单地显示出来。之后,您将能够运行一个新命令


希望它对您有意义,如果您还有任何疑问,请告诉我。

回答您的问题:完成命令的方法是结束字符串

您通过键入
来启动字符串。该字符串从未结束,因为您没有为该字符串键入end
”。当您键入换行符时,该字符串将继续,直到您以结尾
结束为止

分隔符也存在相同的行为


默认情况下,MySQL同时使用
作为字符串分隔符,但给定字符串的开头和结尾必须使用相同的引号字符。使用任何一种引号字符开头字符串后,应使用相同类型的引号结束字符串。

17403,98,18、'F'、'Chennai'、'Kamal'
,在这一行中,您在引起问题的
钦奈
之前给出了
。它应该是
。您应该注意,从这一行开始,您的提示已从
->
更改为
”>
。首先感谢您的解决方案,第二,是否有办法移动到下一个命令行,因为我每次都必须退出它。只需关闭输入错误问题链接,但我仍然不确定您的操作,因为还有另一个答案,分数>0。另外,我不认为这只是一个打字错误的问题。的确,OP犯了一个打字错误,但OP无法理解他无法键入新命令的真正原因,这一点在问题的标题中有所提及,我和@Bill也回答了同样的问题。此外,我认为这对未来的用户也会有帮助。在被指出有错别字后,OP甚至在问题的评论部分问了同样的问题。是的,这肯定对其他刚刚开始练习mysql的人也有帮助!!
mysql> insert into mytable set t = "a string
    "> more string
    "> even more string
    "> end of the string";
Query OK, 1 row affected (0.01 sec)