I've successfully done something similar to your first syntax (
insert into mytable (select * from othertable)) on oracle with two tables, identical except that 'mytable' has extra columns; then updated 'mytable' with extra information as a second operation. Have you tried that?