youtpout978, quel est le contexte de votre batch?
Un fichier CSV?
Sachez qu'une procédure stockée faisant un BULKINSERT (bulkinsert permet de charger en masse un fichier plat dans une table) de votre fichier CSV dans une table de travail puis deux requêtes:
1 2 3 4 5 6 7 8
|
UPDATE C
SET C.firstName=T.firstName,
C.lastName=T.lastname
FROM customer C
INNER JOIN TABLETRAVAIL T
ON T.ID=C.ID
WHERE C.firstname<>T.firstname OR C.lastname<>T.lastname |
Pour mettre a jour tous les customers existants d'un coups
Puis
INSERT INTO customer(firstname,lastname) SELECT firstname,lastname FROM TABLETRAVAIL T WHERE NOT EXISTS(SELECT * FROM customer WHERE id=T.id)
pour insérer les nouveaux customer
Prendrait au bas mots 1 secondes? peut être deux?...
Le bulk insert:
http://msdn.microsoft.com/fr-fr/library/ms188365.aspx
Partager