首页 > 解决方案 > 不理解 Live SQL 中给出的错误

问题描述

我只是在创建一个要插入 2 个学生的表类。我只是一个初学者,在 Oracle live SQL 工作表中编写了一个简单的代码,我想在其中插入值并选择它。但是每次编写此特定代码时都会遇到相同的错误。

CREATE TABLE Class
( 
  studentid int NOT NULL,
  studentname varchar(50) NOT NULL
);
INSERT ALL   
INTO Class(studentid,studentname) VALUES (1,'JIT') 
INTO Class(studentid,studentname) VALUES (2,'Joy') 
SELECT * FROM Class;
commit;

错误是:

ORA-00922: 缺少或无效选项

已处理报表。

问题出在哪里?

标签: oracle

解决方案


您编写的create tableand语句在语法上是正确的。INSERT ALL所以,你没有理由得到这个错误。

需要注意的重要一点是,您应该使用varchar2而不是varchar在 Oracle 中。

INSERT ALL语句不会插入任何内容,因为在创建之后表中还没有任何行。源选择语句不返回任何内容。要使其正常工作,您可以将 select 语句中的表更改为dual.

INSERT ALL

  INTO Class(studentid,studentname) VALUES (1,'JIT')

  INTO Class(studentid,studentname) VALUES (2,'Joy')

SELECT * FROM dual;

演示


推荐阅读