Oracle中的INSERT错误

时间:2018-08-29 05:09:36

标签: sql oracle sql-insert

我正在使用oracle(使用Toad),但是当我尝试执行此查询时

INSERT INTO KEYUSER(NAME) VALUES(UNAME) WHERE ID = 1;

我收到此错误:

  

SQL命令未正确结束。找到了“ WHERE”期望值;或-LOG-或RETURN RETURNING

怎么了?问候。

3 个答案:

答案 0 :(得分:3)

您可以从不在插入语句中使用where子句。当您只是想插入一行时,拥有它没有任何意义。

答案 1 :(得分:1)

一般插入语句如下所示

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);   

因此,在您的情况下,您必须从语句中删除where子句,查询将如下所示

INSERT INTO KEYUSER(NAME) VALUES('UNAME');

答案 2 :(得分:0)

大概您打算使用UPDATE而不是INSERT

UPDATE KEYUSER
    SET NAME = UNAME
    WHERE ID = 1;

有时候,新的SQL用户在INSERTUPDATE之间感到困惑。 INSERT将新的插入表中。 UPDATE更改现有行中的值。令人困惑的是,有人将INSERT解释为“将新值插入一行”。