Непонимание ошибки, приведенной в Live SQL - PullRequest
0 голосов
/ 08 мая 2019

Я просто создаю настольный класс, в который я вставляю 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: отсутствует или недействительна опция

Заявление обработано.

В чем проблема?

1 Ответ

0 голосов
/ 08 мая 2019

Написанные вами операторы create table и INSERT ALL синтаксически верны. Так что нет причины, по которой вы должны получить эту ошибку.

Следует отметить один важный момент: вы должны использовать varchar2, а не varchar в Oracle.

Оператор INSERT ALL ничего не вставит, поскольку в таблице еще нет строк сразу после ее создания. Оператор выбора источника ничего не возвращает. Чтобы это работало, вы можете изменить таблицу в операторе выбора на dual.

INSERT ALL

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

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

SELECT * FROM dual;

DEMO

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...