Status, propriété (objet Field ADO)

Indique l’état d’un objet Field.

Valeur renvoyée

Renvoie une valeur FieldStatusEnum. La valeur par défaut est adFieldOK.

Notes

État du champ Record

Les modifications apportées à la valeur d’un objet Field dans la collection Fields d’un objet Record sont mises en cache jusqu’à l’appel de la méthode Update de l’objet. À ce stade, si la modification de la valeur de Field a provoqué une erreur, OLE DB déclenche l’erreur DB_E_ERRORSOCCURRED (2147749409). La propriété Status de l’un des objets Field de la collection Fields qui a provoqué l’erreur contiendra une valeur de FieldStatusEnum décrivant la cause du problème.

Pour améliorer les performances, les ajouts et les suppressions sur les collections Fields de l’objet Record sont mis en cache jusqu’à l’appel de la méthode Update, après quoi les modifications sont apportées dans une mise à jour optimiste par lot. Si la méthode Update n’est pas appelée, le serveur n’est pas mis à jour. Si des mises à jour échouent, une erreur de fournisseur OLE DB (DB_E_ERRORSOCCURRED) est retournée et la propriété Status indique les valeurs combinées de l’opération et du code d’état d’erreur. Par exemple, adFieldPendingInsert OR adFieldPermissionDenied. La propriété Status de chaque Field peut être utilisée pour déterminer pourquoi l’objet Field n’a pas été ajouté, modifié ou supprimé.

De nombreux types de problèmes rencontrés lors de l’ajout, de la modification ou de la suppression d’un Field sont signalés via la propriété Status. Par exemple, si l’utilisateur supprime un objet Field, il est marqué pour suppression dans la collection Fields. Si l’opération Update suivante renvoie une erreur, car l’utilisateur a tenté de supprimer un Field pour lequel il n’a pas d’autorisation, le Field aura un Status défini sur adFieldPermissionDenied OU adFieldPendingDelete. L’appel de la méthode CancelUpdate restaure les valeurs d’origine et définit le Status sur adFieldOK.

De même, la méthode Update peut renvoyer une erreur, car un nouveau Field a été ajouté et a renvoyé une valeur inappropriée. Dans ce cas, le nouveau Field se trouve dans la collection Fields et est à l’état adFieldPendingInsert, voire éventuellement adFieldCantCreate (en fonction de votre fournisseur). Vous pouvez renseigner une valeur appropriée pour le nouveau Field et appeler à nouveau la méthode Update.

État du champ Recordset

Les modifications apportées à la valeur d’un objet Field dans la collection Fields d’un Recordset sont mises en cache jusqu’à l’appel de la méthode Update de l’objet. À ce stade, si la modification de la valeur de Field a provoqué une erreur, OLE DB déclenche l’erreur DB_E_ERRORSOCCURRED (2147749409). La propriété Status de l’un des objets Field de la collection Fields qui a provoqué l’erreur contiendra une valeur de FieldStatusEnum décrivant la cause du problème.

S'applique à

Field, objet

Voir aussi

Status, exemple de propriété (objet Field) (VB)
Status, exemple de propriété (VC++)