Question

Pour SQL Server 2005, si je souhaite insérer environ 20 ou 30 lignes chacune avec trois colonnes, quelle approche est plus rapide et efficace? L'application d'appel est une application Console C # 4.0 .NET.

a) passer les valeurs en XML à un proc stocké et l'analyser et faire l'insert
OU
b) Construisez une commande SQL avec INSERT...VALUES... SELECT() UNION ALL Comme suggéré ici: SQL Server 2005: insérer plusieurs lignes avec une seule requête ?

Merci.

Était-ce utile?

La solution

Les avez-vous essayés? Pour être honnête, pour 20 ou 30 rangées, vous auriez vraiment du mal à trouver une différence. À plus grande échelle, je m'attendrais à ce que le coût des données supplémentaires et l'analyse impliqués dans XML extrait les données en feraient le choix moins efficace. Dans SQL Server 2008, il y a un plus efficace VALUES() constructeur qui ne nécessite pas UNION ALL, et il existe également une nouvelle approche appelée paramètres à valeur de table.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top