One of the reasons that you're facing this is because SQL Server auto commits every transaction and Oracle doesn't. You need to manually commit any DML actions. If you use an explicit transaction around the loop in SQL Server, you'll find an improvement on its performance or commit every row insert on Oracle and the performance should decrease.
To try the insert of 1000 at once, read about tally tables and how do they replace a loop. Here's a good place to start: http://www.sqlservercentral.com/articles/T-SQL/62867/