Multiplos inserts no Oracle

Eu preciso criar um script SQL (de preferencia SQL nativo do Oracle sem usar PL/SQL ou procedures/functions). Este script deve fazer 3 inserts onde eu preciso utilizar o mesmo id gerado por duas sequencias

Seria algo parecido com isso

1 INSERT => INSERT INTO tabelaA (max(id),valor) - este insert nao tem sequence para o id mas eu preciso utilizar o id inserido no segundo insert - apenas um registro


2 INSERT => INSERT INTO tabelaB(seq1.nextval, id, valor, valor2,…)
este insert usa o id gerado no insert 1 e o nextval da seq1, muitos registros, resultado de um select


3 INSERT ==> INSERT INTO tabelaC (seq1.nextval, seq2.nextval)
este insert usa o nextval da seq1 e o nextval da seq2, muitos registros, resultado de um select

Consegui fazer usando o RETURNING INTO no INSERT1 e jogando em uma variavel que depois eu uso no INSERT2 Entretando o INSERT2 é feito como resultado de um SELECT parece que eu precisaria usar um BULK COLLECTION outra alternativa seria usar um INSERT ALL, mas eu teria que fazer o INSERT1 separado Se alguem tiver uma idéia já será de muita ajuda

Estou usando Oracle 11

Bom, já que ninguem respondeu vou dizer como eu resolvi

Criei uma procedure usando cursor. O cursor me traz a lista de ids inseridos pela sequence na aprimeira tabela, depois eu vou inserindo nas outras