Partager via


db_accessor

attributs de db_column de groupes qui participent à la liaison basée sur d' IAccessor.

[ db_accessor(  
   num,  
   auto  
) ]

Paramètres

  • num
    Spécifie le numéro de l'accesseur (un index d'entiers de base zéro). Vous devez spécifier des numéros d'accesseur en augmentant la commande, à des entiers ou des valeurs définies.

  • auto
    Valeur booléenne qui spécifie, que l'accesseur est automatiquement extrait (TRUE) ou échec de l'extraction (FALSE).

Notes

db_accessor définit l'accesseur sous-jacent OLE DB pour db_column suivant les attributs et de db_param dans la même classe ou la fonction. db_accessor est utilisable au niveau de le membre et est utilisé pour grouper les attributs de db_column qui participent à la liaison basée sur OLE DB IAccessor. Il est utilisé avec les attributs de db_table ou de db_command . Appeler cet attribut revient à appeler des macros de BEGIN_ACCESSOR et d' END_ACCESSOR .

db_accessor génère un ensemble de lignes et des liens aux tables de correspondance d'accesseur. Si vous n'appelez pas db_accessor, l'accesseur 0 sera généré automatiquement, et toutes les liaisons des colonnes sont mappées à ce bloc d'accesseur.

db_accessor groupe des liaisons des colonnes de base de données dans un ou plusieurs accesseurs. Pour en savoir plus sur les scénarios dans lesquels vous devez utiliser plusieurs accesseurs, consultez l' Utilisation de plusieurs accesseurs dans un jeu de lignes. Voir aussi « prise en charge d'enregistrement utilisateur de plusieurs accesseurs » dans Enregistrements utilisateur.

Lorsque le fournisseur d'attributs du consommateur applique cet attribut à une classe, le compilateur renommera la classe au _YourClassNameAccessor, où YourClassName est le nom que vous avez donné à la classe, et le compilateur crée également une classe appelée YourClassName, qui dérive de _YourClassNameAccessor. Dans l'Affichage de classes, vous verrez les deux classes.

Exemple

L'exemple suivant utilise db_accessor pour regrouper des colonnes de la table Orders de la base de données Northwind dans deux accesseurs. L'accesseur 0 est un accesseur automatique, les accesseurs et 1 n'est pas.

// cpp_attr_ref_db_accessor.cpp
// compile with: /LD /link /OPT:NOREF
#define _ATL_ATTRIBUTES
#include <atlbase.h>
#include <atldbcli.h>

[ db_command(L"SELECT LastName, FirstName FROM Orders") ]
class CEmployees {
public:
   [ db_accessor(0, TRUE) ];
   [ db_column("1") ] LONG m_OrderID;
   [ db_column("2") ] TCHAR m_CustomerID[6];
   [ db_column("4") ] DBTIMESTAMP m_OrderDate; 

   [ db_accessor(1, FALSE) ];
   [ db_column("8") ] CURRENCY m_Freight;
};

Configuration requise

contexte d'attribut

S'applique à

blocs d'attributs

reproductible

Non

attributs requis

Aucun

attributs valides

Aucun

Pour plus d'informations sur les contextes d'attribut, consultez contextes d'attribut.

Voir aussi

Autres ressources

Attributs du consommateur OLE DB

Attributes Samples