Método SqlDataAdapter.Fill lento
Por que um procedimento armazenado que retorna uma tabela com 9 colunas e 89 linhas usando esse código leva 60 segundos para ser executado (.NET 1.1) quando leva menos de 1 segundo para ser executado no SQL Server Management Studio? Ele está sendo executado na máquina local, com pouca / nenhuma latência de rede, máquina dev rápida
Dim command As SqlCommand = New SqlCommand(procName, CreateConnection())
command.CommandType = CommandType.StoredProcedure
command.CommandTimeout = _commandTimeOut
Try
Dim adapter As new SqlDataAdapter(command)
Dim i as Integer
For i=0 to parameters.Length-1
command.Parameters.Add(parameters(i))
Next
adapter.Fill(tableToFill)
adapter.Dispose()
Finally
command.Dispose()
End Try
minha matriz de parametros é digitada (para este SQL é apenas um único parâmetro)
parameters(0) = New SqlParameter("@UserID", SqlDbType.BigInt, 0, ParameterDirection.Input, True, 19, 0, "", DataRowVersion.Current, userID)
O procedimento Stored é apenas uma instrução select assim:
ALTER PROC [dbo].[web_GetMyStuffFool]
(@UserID BIGINT)
AS
SELECT Col1, Col2, Col3, Col3, Col3, Col3, Col3, Col3, Col3
FROM [Table]