我试图在My 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;
">
我什至用过清除它,但是每次都只是添加了一个新行,我不知道这里发生了什么。
答案 0 :(得分:1)
要回答您的问题:完成命令的方法是结束字符串。
您通过键入"
开始了一个字符串。该字符串永远不会结束,因为您没有输入字符串的结尾"
。在键入换行符时,字符串会一直存在,直到以结尾"
结尾。
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)
'
分隔符存在相同的行为。
MySQL默认使用"
和'
作为字符串定界符,但是给定的字符串的开始和结束必须使用相同的引号字符。用任何一种引号字符开头的字符串后,都应使用相同的引号结尾该字符串。
答案 1 :(得分:0)
如@AkhileshMishra所述,单个"
会引起问题,将其替换为'
将解决您的问题。
关于“移至下一个命令行”,psql会在执行之前继续添加SQL查询,直到找到逻辑端点为止。在您的情况下,您使用了单个"
,但它一直试图找到结尾"
。因此,您无法运行clear命令或其他任何命令。
您可以尝试放置"
和;
来表明您已完成查询的编写,然后psql将识别查询中的语法错误并简单地显示出来。之后,您将可以运行新命令。
希望对您有意义,如果您还有任何疑问,请告诉我。