2010-04-16 6 views
0

J'ai une application Web qui insère actuellement x (entre 1 + 40) enregistrements dans une table contenant environ 5 champs, via une procédure linq-2-sql-stockée dans une boucle. Serait-il préférable d'écrire manuellement les insertions SQL pour dire un constructeur de chaîne et les exécuter sur la base de données lorsque les boucles sont terminées plutôt que 30 transactions? ou devrais-je simplement accepter cela est négligeable pour un si petit nombre d'inserts.Insertion de plusieurs enregistrements dans SQL2000

Répondre

1

En général, si la base de données est bien optimisée (indexée correctement et bien entretenue), la plus grande surcharge que vous avez est dans la création de connexion.

Il vaudra mieux créer une grosse requête et initier une connexion que de créer 30 petites requêtes et initier 30 connexions.

Si vous regardez vers le futur, vous pouvez vous retrouver avec une boucle de centaines ou de milliers. Vous pouvez également avoir beaucoup plus d'utilisateurs appelant cette fonction, alors vous pouvez aussi bien penser à la mise à l'échelle maintenant.

En résumé: Créez la requête et exécutez-la une fois que vous avez terminé la boucle.

+0

Figuré autant; Bon à vérifier avant de me tirer dans le pied: o) –

Questions connexes