Domanda

Per SQL Server 2005, se desidero inserire circa 20 o 30 righe ciascuna con tre colonne, quale approccio è più veloce ed efficiente?L'applicazione chiamante è un'applicazione console .NET in C # 4.0.

a) Passando i valori come XML a un processo memorizzato, analizzandolo ed eseguendo l'inserimento
OPPURE
b) Costruisci un comando SQL con INSERT...VALUES... SELECT() UNION ALL come suggerito qui: SQL Server2005: inserire più righe con un'unica query ?

Grazie.

È stato utile?

Soluzione

Li hai provati?Ad essere onesti, per 20 o 30 righe, sarebbe davvero difficile trovare una differenza.Su una scala più ampia, mi aspetterei che il costo dei dati extra e l'analisi coinvolti con XML per estrarre i dati lo renderebbero la scelta meno efficiente.In SQL Server 2008 è disponibile un costruttore VALUES() più efficiente che non richiede UNION ALL ed è inoltre disponibile un nuovo approccio denominato parametri con valori di tabella.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top