Oracle
 sql >> Base de données >  >> RDS >> Oracle

Je reçois une erreur dans la commande SQL qui ne s'est pas correctement terminée

Dans Oracle, vous ne pouvez pas spécifier plusieurs ensembles de valeurs comme celui-ci (je suppose que vous venez d'un arrière-plan MySQL où cette syntaxe est autorisée). L'approche la plus simple consiste à générer plusieurs INSERT déclarations

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);

...

Vous pouvez également insérer plusieurs lignes en utilisant un seul INSERT ALL déclaration

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;