UpdateBatch, méthode

Écrit toutes les mises à jour par lots en attente sur le disque.

Syntaxe

  
recordset.UpdateBatch AffectRecords, PreserveStatus  

Paramètres

AffectRecords
facultatif. Une valeur AffectEnum qui indique le nombre d’enregistrements affectés par la méthode UpdateBatch.

PreserveStatus
facultatif. Une valeur booléenne qui spécifie si les modifications locales, comme indiqué par la propriété Status, doivent être validées. Si cette valeur est définie sur True, la propriété Status de chaque enregistrement reste inchangée une fois la mise à jour terminée.

Notes

Utilisez la méthode UpdateBatch lors de la modification d’un objet Recordset en mode de mise à jour par lots pour transmettre toutes les modifications apportées dans un objet Recordset à la base de données sous-jacente.

Si l’objet Recordset prend en charge la mise à jour par lots, vous pouvez mettre en cache plusieurs modifications apportées à un ou plusieurs enregistrements localement jusqu’à appeler la méthode UpdateBatch. Si vous modifiez l’enregistrement actif ou si vous ajoutez un nouvel enregistrement lorsque vous appelez la méthode UpdateBatch, ADO appelle automatiquement la méthode Update pour enregistrer les modifications en attente dans l’enregistrement actif avant de transmettre les modifications par lot au fournisseur. Vous devez utiliser la mise à jour par lots avec un jeu de clés ou un curseur statique uniquement.

Notes

Spécifier adAffectGroup comme valeur pour ce paramètre entraîne une erreur lorsqu’il n’existe aucun enregistrement visible du Recordset actif (par exemple, un filtre pour lequel aucun enregistrement ne correspond).

Si la tentative de transmission des modifications échoue pour tous les enregistrements en raison d’un conflit avec les données sous-jacentes (par exemple, un enregistrement a déjà été supprimé par un autre utilisateur), le fournisseur renvoie des avertissements à la collection Errors et une erreur d’exécution se produit. Utilisez la propriété Filter (adFilterAffectedRecords) et la propriété Status pour localiser les enregistrements en conflit.

Pour annuler toutes les mises à jour de lot en attente, utilisez la méthode CancelBatch.

Si les propriétés dynamiques Unique Table et Update Resync sont définies et que l’objet Recordset est le résultat de l’exécution d’une opération JOIN sur plusieurs tables, l’exécution de la méthode UpdateBatch est implicitement suivie de la méthode Resync, en fonction des paramètres de la propriété Update Resync.

L’ordre dans lequel les mises à jour individuelles d’un lot sont effectuées sur la source de données n’est pas nécessairement identique à l’ordre dans lequel ils ont été effectués sur le Recordset local. L’ordre de mise à jour dépend du fournisseur. Prenez cela en compte lors du codage des mises à jour liées les unes aux autres, telles que les contraintes de clé étrangère sur une insertion ou une mise à jour.

S'applique à

Recordset, objet (ADO)

Voir aussi

UpdateBatch et CancelBatch, exemple de méthodes
UpdateBatch et CancelBatch, exemple de méthodes (VC++)
CancelBatch, méthode (ADO)
Clear, méthode (ADO)
LockType, propriété (ADO)
Update, méthode