oracle执行大量删除插入sql的效率问题?

一千多行的insert /delete 的SQL语句,在没有使用declare begin end包起来的时候卡死,使用declare begin end包起来后执行一秒就执行完了 是为啥??

insert into table1(c1,c2,c3) values(1,2,3),(4,5,6),(7,8,9)........