Por que as inserções do servidor SQL são tão lentas?

Eu estou tentando inserir linhas de dados na memória em uma tabela no SQL Server Express 2005. Ele está executando o que parece-me muito lentamente - cerca de 5 segundos por 1000 linhas inseridas. Eu estou apenas usando um comando básico "INSERT INTO". A lentidão não depende dos dados da tabela - ela ainda é lenta com uma tabela com uma coluna int e nenhum índice. Não tem nada a ver com o meu software - ele é tão lento quanto o SQL em um loop do Management Studio. Não há mais nada acessando o banco de dados ao mesmo tempo. Em um 3Ghz Xeon (antigo eu sei), isso levará cerca de 10 segundos para executar:

declare @i int  
set @i = 0  
set nocount on  
while @i < 2000  
begin  
insert into testdb(testcolumn)  
values (1)  
set @i = @i + 1  
end  

Existe uma maneira melhor de inserir dados em memória em massa do que o loop em INSERT? Ou alguma configuração que eu deveria mudar no SQL Server?

questionAnswers(7)

yourAnswerToTheQuestion