Je sais que je peux insérer plusieurs lignes en utilisant une seule instruction, si j'utilise la syntaxe dans this answer.Comment puis-je insérer plusieurs lignes dans Oracle avec une valeur de séquence?
Cependant, l'une des valeurs que je suis d'insertion est prise d'une séquence, à savoir
insert into TABLE_NAME
(COL1,COL2)
select MY_SEQ.nextval,'some value' from dual
union all
select MY_SEQ.nextval,'another value' from dual
;
Si je tente de l'exécuter, je reçois une erreur ORA-02287. Y at-il un moyen de contourner cela, ou devrais-je simplement utiliser beaucoup d'instructions INSERT?
EDIT:
Si je dois spécifier des noms de colonne pour toutes les autres colonnes autres que la séquence, je perds la brièveté d'origine, donc cela ne vaut pas la peine. Dans ce cas, je vais simplement utiliser plusieurs instructions INSERT.
Voir aussi http: // stackoverflow.com/questions/8292199/requête-plusieurs-nextval-de-séquence-dans-un-satement si vous êtes ici et que vous voulez simplement sélectionner plusieurs séquences uniques différentes nextval dans la même requête ... – rogerdpack