Ok, still i have a question.
If i do like:
alter table .......................
exec (insert into ...............)
It works! and now i understand why, it's because the exec dont let the compiler see the insert statement.
But why does the opposite don't work?
exec(alter table .....................)
insert into ...............