Oracle
 sql >> база данни >  >> RDS >> Oracle

Получавам грешка в SQL командата, която не е приключила правилно

В Oracle не можете да посочите множество набори от стойности като този (предполагам, че идвате от MySQL фон, където този синтаксис е разрешен). Най-простият подход е да генерирате множество INSERT изявления

INSERT INTO works_on
(essn, pno, hours)
values
('123456789', 1, 32.5);

INSERT INTO works_on
(essn, pno, hours)
values
('123456789', 2, 7.5);

INSERT INTO works_on
(essn, pno, hours)
values
('666884444', 3, 40.0);

...

Можете също така да вмъкнете няколко реда, като използвате един INSERT ALL изявление

INSERT ALL
  INTO works_on(essn, pno, hours) values('123456789', 1, 32.5)
  INTO works_on(essn, pno, hours) values('123456789', 2, 7.5)
  INTO works_on(essn, pno, hours) values('666884444', 3, 40.0)
  INTO works_on(essn, pno, hours) values('453453453', 1, 20.0)
  INTO works_on(essn, pno, hours) values('453453453', 2, 20.0)
  INTO works_on(essn, pno, hours) values('333445555', 2, 10.0)
  INTO works_on(essn, pno, hours) values('333445555', 3, 10.0)
  ...
SELECT *
  FROM dual;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Вложена функция PIPELINED

  2. Числовият тип данни се показва като # в SQL Plus

  3. намиране на имена на колони и имена на таблици, посочени в SQL

  4. сборна заявка с някакво логическо нетиране с помощта на Oracle SQL

  5. Каква е причината/полезността е да се използва ключова дума ENABLE в изразите на базата данни на Oracle