Pergunta

Para o SQL Server 2005, se eu quiser inserir cerca de 20 ou 30 linhas cada uma com três colunas, qual abordagem é mais rápida e eficiente?O aplicativo de chamada é um aplicativo de console C # 4.0 .Net.

a) Passando os valores como XML para um procedimento armazenado, analisando-o e fazendo a inserção
OU
b) Construa um comando SQL com INSERT...VALUES... SELECT() UNION ALL como sugerido aqui: SQL Server2005: inserir várias linhas com uma única consulta ?

Obrigado.

Foi útil?

Solução

Você experimentou?Para ser honesto, por 20 ou 30 linhas, seria muito difícil encontrar uma diferença.Em uma escala maior, eu esperaria que o custo de dados extras e análise envolvida com XML para extrair dados tornasse a escolha menos eficiente.No SQL Server 2008, há um construtor VALUES() mais eficiente que não requer UNION ALL e também há uma nova abordagem chamada parâmetros com valor de tabela.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top