Attribut Status ADO

Définition et utilisation

L'attribut Status peut retourner une FieldStatusEnum Valeur, qui indique l'état de l'objet champ. La valeur par défaut est adFieldOK.

Si la mise à jour échoue, un message d'erreur sera retourné et l'attribut Status indiquera la valeur combinée de l'opération et le code d'état d'erreur. L'attribut Status de chaque champ peut être utilisé pour déterminer la raison pour laquelle le champ n'a pas été ajouté, modifié ou supprimé.

Les problèmes liés à l'ajout, à la modification ou à la suppression d'un champ sont signalés par cette propriété. Par exemple, si un utilisateur supprime un champ, il sera marqué comme supprimé dans la collection Fields. Si l'appel Update retourne une erreur en raison de l'essai de suppression d'un champ pour lequel l'utilisateur n'a pas les autorisations, le statut du champ sera adFieldPermissionDenied ou adFieldPendingDelete.

Syntaxe

objfield.Status

Instance

<%
set conn=Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "c:/webdata/northwind.mdb"
set rs = Server.CreateObject("ADODB.Recordset")
rs.open "Select * from orders", conn
response.write(rs.Fields(0).Status)
rs.Close
conn.close
%>

Valeur de FieldStatusEnum

Constante Valeur Description
adFieldOK 0 Par défaut. Indique que le champ a été ajouté ou supprimé avec succès.
adFieldCantConvertValue 2 L'indicateur que ce champ ne peut pas être récupéré ou stocké sans perte de données.
adFieldIsNull 3 L'indicateur que le fournisseur a retourné une valeur Null.
adFieldTruncated 4 L'indicateur que les données variables lues à partir de la source de données sont tronquées.
adFieldSignMismatch 5 L'indicateur que la valeur de données retournée par le fournisseur est signée, tandis que le type de données de la valeur du champ ADO n'est pas signé.
adFieldDataOverflow 6 L'indicateur que les données retournées par le fournisseur dépassent le type de données du champ.
adFieldCantCreate 7 L'indicateur que le fournisseur ne peut pas ajouter ce champ car il a dépassé les limites (par exemple, le nombre de champs autorisés).
adFieldUnavailable 8 L'indicateur que lorsque l'information est lue à partir de la source de données, le fournisseur ne peut pas déterminer la valeur. Par exemple, une ligne vient d'être créée, la valeur par défaut de la colonne ne peut pas être utilisée, et aucune nouvelle valeur n'a été spécifiée.
adFieldPermissionDenied 9 Indique que le champ ne peut pas être modifié car il est défini comme lecture seule.
adFieldIntegrityViolation 10 Indique que le champ ne peut pas être modifié car il est calculé ou dérivé.
adFieldSchemaViolation 11 Indique que la valeur enfreint les restrictions du schéma de la source de données du champ.
adFieldBadStatus 12 Indique que l'état invalide a été envoyé du fournisseur ADO à celui d'OLE DB. La cause peut être un fournisseur OLE DB 1.0 ou 1.1, ou un mauvais mélange de Value et Status.
adFieldDefault 13 Indique que la valeur par défaut du champ a été utilisée lors de la définition des données.
adFieldIgnore 15 Indique que lors de la définition de la valeur de données dans le point de source, ce champ a été ignoré. Le fournisseur n'a pas défini de valeur.
adFieldDoesNotExist 16 Indique que le champ spécifié n'existe pas.
adFieldInvalidURL 17 Indique que l'URL de la source de données contient des caractères invalides.
adFieldResourceLocked 18 Indique que le fournisseur ne peut pas exécuter l'opération car la source de données est verrouillée par une ou plusieurs autres applications ou processus.
adFieldResourceExists 19 Indique que le fournisseur ne peut pas exécuter l'opération car l'objet existe déjà à l'URL cible et ne peut pas être remplacé.
adFieldCannotComplete 20 Indique que le serveur indiqué par l'URL Source ne peut pas effectuer l'opération.
adFieldVolumeNotFound 21 Indique que le fournisseur ne peut pas localiser la quantité de stockage indiquée par l'URL.
adFieldOutOfSpace 22 Indique que le fournisseur ne peut pas obtenir suffisamment d'espace de stockage pour effectuer l'opération de déplacement ou de copie.
adFieldCannotDeleteSource 23 Indique que lors de l'opération de déplacement, l'arbre ou le sous-arbre a été déplacé à une nouvelle position, mais que la source ne peut pas être supprimée.
adFieldReadOnly 24 Indique que le champ dans la source de données est défini comme lecture seule.
adFieldResourceOutOfScope 25 Indique que l'URL source ou cible dépasse la portée actuelle de l'enregistrement.
adFieldAlreadyExists 26 Indique que le champ spécifié existe déjà.
adFieldPendingInsert 0x10000 L'opération Append indique qu'il est nécessaire de configurer l'état. Le champ est marqué comme ayant été ajouté à l'ensemble Fields après l'appel de la méthode Update.
adFieldPendingDelete 0x20000 Indique que l'opération Delete a nécessité la mise en place de l'état. Le champ est marqué pour être supprimé du jeu Fields après l'appel de la méthode Update.
adFieldPendingChange 0x40000 Indique que le champ a été supprimé puis réajouté (peut-être avec un type de données différent), ou que la valeur du champ qui avait auparavant un état adFieldOK a été modifiée. Le format final du champ sera modifié dans le jeu Fields après l'appel de la méthode Update.
adFieldPendingUnknown 0x80000 Indique que le fournisseur ne peut pas déterminer quelle opération a nécessité la mise en place de l'état.
adFieldPendingUnknownDelete 0x100000 Indique que le fournisseur ne peut pas déterminer quelle opération a nécessité la mise en place de l'état du champ, et que ce champ sera supprimé du jeu Fields après l'appel de la méthode Update.