La structure CDaoFieldInfo a la forme suivante:
struct CDaoFieldInfo
{
nbsp ; CString m_str&Name ; / / Primaire
m_nType courtes ; / / Primaire
long m_lSize ; / / Primaire
long m_lAttributes ; / / Primaire
m_nOrdinalPosition courtes ; / / Secondaire
BOOL m_bRequired ; / / Secondaire
BOOL m_bAllowZeroLength ; / / Secondaire
long m_lCollatingOrder ; / / Secondaire
CString m_strForeignName ; / / Secondaire
CString m_strSourceField ; / / Secondaire
CString m_strSourceTable ; / / Secondaire
CString m_strValidationRule ; / / Toutes les
CString m_strValidationText ; / / Toutes les
CString m_strDefaultValue ; / / Toutes les
}
La structure de CDaoFieldInfo contient des informations sur un objet de champ définie pour les objets de données access (DAO). Les références à la primaire, secondaire et tous les ci-dessus indiquent comment l'information est retournée par la fonction membre GetFieldInfo dans les classes CDaoTableDef, CDaoQueryDefet CDaoRecordset.
Les objets de champ ne sont pas représentés par une classe MFC. Au lieu de cela, les objets DAO sous-jacente objets MFC des classes suivantes contiennent des collections d'objets field : CDaoQueryDef, CDaoTableDefet CDaoRecordset. Ces classes fournissent des fonctions membres pour accéder à certains éléments individuels de l'information de terrain, ou vous pouvez y accéder tout à la fois avec un objet CDaoFieldInfo en appelant la fonction membre GetFieldInfo de l'objet.
Outre son utilisation pour examiner les propriétés de l'objet, vous pouvez également utiliser CDaoFieldInfo pour construire un paramètre d'entrée pour la création de nouveaux champs dans un objet tabledef. Plus simple, les options sont disponibles pour cette tâche, mais si vous souhaitez contrôler plus fine, vous pouvez utiliser la version de CDaoTableDef::CreateField qui prend un paramètre de CDaoFieldInfo.
Membres
m_strName
Noms unique de l'objet field. Pour plus de détails, voir la rubrique « Nom de propriété » dans l'aide de DAO.
m_nType
Une valeur qui indique le type de données du champ. Pour plus d'informations, consultez la rubrique « Type bien » dans l'aide de DAO. La valeur de cette propriété peut être l'une des opérations suivantes:
&Notenbsp ; N'utilisez pas de types de données chaîne de données binaires. Cela provoque vos données à passer à travers la couche de traduction Unicode/ANSI, résultant en une augmentation de frais généraux et peut-être inattendue traduction.
m_lSize
Une valeur qui indique la taille maximale, en octets, d'un objet de champ DAO qui contient le texte ou la taille fixe d'un objet de champ qui contient les valeurs texte ou numérique. Pour plus d'informations, consultez la rubrique « Propriété de taille » dans l'aide de DAO. La taille peut être l'une des valeurs suivantes:
| Type | Taille (octets) | Description |
| dbBoolean | 1 octet | Oui/non (même que True/False) |
| dbByte | 1 | Octets |
| dbInteger | 2 | Entier |
| dbLong | 4 | Long |
| dbCurrency | 8 | Monnaie (COleCurrency) |
| dbSingle | 4 | Unique |
| dbDouble | 8 | Double |
| dbDate | 8 | Date/heure (COleDateTime) |
| dbText | 1 - 255 | Texte (CString) |
| dbLongBinary | 0 | Long Binary (objet OLE ; CByteArray; Utilisez au lieu de CLongBinary) |
| dbMemo | 0 | Mémo (CString) |
| dbGUID | 16 | Globalement identificateur universel Unique identificateur Unique utilisé avec les appels de procédure distante. |
m_lAttributes
Spécifie les caractéristiques d'un objet de champ contenues dans un objet tabledef, recordset, objet querydef ou objet index. La valeur retournée peut être une somme de ces constantes, créé avec l'opérateur de bits OR (|) C++:
Lors de la vérification de la définition de cette propriété, vous pouvez utiliser le C++ au niveau du BIT- et opérateur (amp;) pour tester un attribut spécifique. Lorsque plusieurs attributs, vous pouvez les combiner en combinant les constantes appropriées avec l'opérateur de bits OR (|). Pour plus de détails, consultez la rubrique « Propriété &Attributes » dans l'aide de DAO.
m_nOrdinalPosition
Une valeur qui spécifie l'ordre numérique dans lequel vous souhaitez un champ représenté par un objet de champ DAO à afficher par rapport à d'autres domaines. Vous pouvez définir cette propriété avec CDaoTableDef::CreateField. Pour plus de détails, consultez la rubrique « Propriété OrdinalPosition » dans l'aide de DAO.
m_bRequired
Indique si un objet de champ DAO requiert une valeur non Null. Si cette propriété est TRUE, le champ ne permet pas une valeur Null. Si la valeur FALSE, le champ peut contenir des valeurs Null comme valeurs qui remplissent les conditions spécifiées par les paramètres de propriété AllowZeroLength et ValidationRule. Pour plus d'informations, consultez la rubrique « Biens nécessaires » dans l'aide de DAO. Vous pouvez définir cette propriété pour un objet tabledef avec CDaoTableDef::CreateField.
m_bAllowZeroLength
Indique si une chaîne vide ("") est une valeur valide d'un objet de champ DAO avec un type de données texte ou Mémo. Si cette propriété est TRUE, une chaîne vide est une valeur valide. FALSE pour s'assurer que vous ne pouvez pas utiliser une chaîne vide pour définir la valeur d'un champ, vous pouvez définir cette propriété. Pour plus d'informations, consultez la rubrique « Propriété AllowZeroLength » dans l'aide de DAO. Vous pouvez définir cette propriété pour un objet tabledef avec CDaoTableDef::CreateField.
m_lCollatingOrder
Spécifie la séquence de l'ordre de tri de texte pour la comparaison de chaînes ou de tri. Pour plus d'informations, consultez la rubrique « Personnalisation Windows paramètres de données accès au registre » dans l'aide de DAO. Pour une liste des valeurs possibles retournées, consultez le membre m_lCollatingOrder de la structure CDaoDatabaseInfo . Vous pouvez définir cette propriété pour un objet tabledef avec CDaoTableDef::CreateField.
m_strForeignName
Une valeur qui, dans une relation, spécifie le nom de l'objet field DAO dans une table étrangère qui correspond à un champ dans une table primaire. Pour plus de détails, consultez la rubrique « Propriété ForeignName » dans l'aide de DAO.
m_strSourceField
Indique le nom du champ qui est la source d'origine des données pour un objet champ DAO contenue dans un objet tabledef, un jeu d'enregistrements ou un objet querydef. Cette propriété indique le nom du champ original associé à un objet de champ. Par exemple, vous pouvez utiliser cette propriété pour déterminer la source originale des données dans un champ de requête, dont le nom est sans rapport avec le nom du champ dans la table sous-jacente. Pour plus de détails, voir la rubrique « SourceField, propriétés SourceTable » dans l'aide de DAO. Vous pouvez définir cette propriété pour un objet tabledef avec CDaoTableDef::CreateField.
m_strSourceTable
Indique le nom de la table qui est la source d'origine des données pour un objet champ DAO contenue dans un objet tabledef, un jeu d'enregistrements ou un objet querydef. Cette propriété indique le nom de table original, associé à un objet de champ. Par exemple, vous pouvez utiliser cette propriété pour déterminer la source originale des données dans un champ de requête, dont le nom est sans rapport avec le nom du champ dans la table sous-jacente. Pour plus de détails, voir la rubrique « SourceField, propriétés SourceTable » dans l'aide de DAO. Vous pouvez définir cette propriété pour un objet tabledef avec CDaoTableDef::CreateField.
m_strValidationRule
Une valeur valide les données dans un champ lorsqu'il est modifié ou ajouté à une table. Pour plus d'informations, consultez la rubrique « Propriété ValideSi (ValidationRule) » dans l'aide de DAO. Vous pouvez définir cette propriété pour un objet tabledef avec CDaoTableDef::CreateField.
Pour plus d'informations sur les objets tabledef, consultez le membre m_strValidationRule de la structure CDaoTableDefInfo.
m_strValidationText
Une valeur qui spécifie le texte du message que votre application s'affiche si la valeur d'un objet de champ DAO ne satisfait pas à la règle de validation spécifiée par le paramètre de la propriété ValideSi (ValidationRule). Pour plus d'informations, consultez la rubrique « Propriété ValidationText » dans l'aide de DAO. Vous pouvez définir cette propriété pour un objet tabledef avec CDaoTableDef::CreateField.
m_strDefaultValue
La valeur par défaut d'un objet de champ DAO. Lorsqu'un enregistrement est créé, le paramètre de la propriété DefaultValue est entré automatiquement comme valeur pour le champ. Pour plus d'informations, consultez la rubrique « Propriété DefaultValue » dans l'aide de DAO. Vous pouvez définir cette propriété pour un objet tabledef avec CDaoTableDef::CreateField.
Commentaires
Information récupérée par la fonction membre GetFieldInfo (de la classe qui contient le champ) est stockée dans une structure CDaoFieldInfo . Appelez la fonction membre GetFieldInfo de l'objet dont collection Fields de l'objet field est stocké. CDaoFieldInfo définit également une fonction membre Dump dans les versions de débogage. Vous pouvez utiliser Dump pour vider le contenu d'un objet CDaoFieldInfo.
Pour plus d'informations sur l'utilisation de ceci et autres structures d'information sur DAO MFC, consultez l'article Collections DAO : informations sur les objets DAO dans le Guide du programmeur Visual C++.
Voir aussi  ;CDaoTableDef::GetFieldInfo, CDaoRecordset::GetFieldInfo, CDaoQueryDef::GetFieldInfo