db_accessor

分组联接 IAccessor基于绑定的 db_column 属性。

[ db_accessor(  
   num,  
   auto  
) ]

参数

  • num
    指定访问器编号 (从零开始的整数索引)。 使用整数或已定义的值,则必须以递增的顺序指定访问器编号,。

  • 自动
    指定的布尔值是否访问器自动检索 (TRUE) 不会检索 (错误)。

备注

db_accessor 定义后续 db_column 的基础 OLE DB 访问器和在同一个类或函数中的 db_param 属性。 db_accessor 中可用的成员级别和用于分组联接 OLE DB IAccessor基于绑定的 db_column 属性。 它与 db_tabledb_command 特性一起使用。 调用此属性与调用 BEGIN_ACCESSOREND_ACCESSOR 宏。

db_accessor 生成一个行集合并将其绑定到相应的访问器映射。 如果不调用 db_accessor,访问器 0 将自动生成,因此,所有列绑定将映射到此访问器块。

db_accessor 组数据库列绑定到一个或多个访问器中。 有关需要使用多个访问器的方案的讨论,请参见 行集合上使用多个访问器。 请参见 “用户记录为多个访问器支持” 用户记录的。

当使用者属性提供程序应用此特性应用于类,编译器将类重命名为 _TheClassNameAccessor, TheClassName 的名称就是您为该类,因此,编译器还将创建一个名为 TheClassName 的 从 _TheClassNameAccessor 派生。 在类视图中,您将看到两类。

示例

下面的示例使用 db_accessor 分组列在 Northwind 数据库的 orders 表中到两个访问器。 访问器 0 是自动访问器,因此,访问器 1 不是。

// 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;
};

要求

属性上下文

适用对象

特性块

可重复

必需的特性

无效的特性

有关属性上下文的更多信息,请参见 属性上下文

请参见

其他资源

OLE DB 使用者特性

Attributes Samples