Поделиться через


db_column

Привязывает указанный столбец к переменной в наборе строк.

[ db_column(  
   ordinal,  
   dbtype,  
   precision,  
   scale,  
   status,  
   length  
) ]

Параметры

  • ordinal
    Порядковый номер столбца (DBCOLUMNINFO порядковый номер) или имя столбца (строки ANSI или юникод), соответствующее полю в наборе строк, в котором для привязки данных. При использовании номера, можно пропустить последовательные порядковые номера (например: 1, 2, 3, 5). Имя может содержать пробелы, если поставщик OLE DB, используемый поддерживает его. Например, можно использовать любой из следующих форматов:

    [db_column("2")] TCHAR szCity[30];
    [db_column(L"city_name")] TCHAR szCity[30];
    
  • dbtype (необязательно)
    OLE DB Индикатор типа для записи столбца.

  • Точность (необязательно)
    Точность, используемая для записи столбца. Дополнительные сведения см. в разделе описание bPrecision элемент структура DBBINDING

  • масштаб (необязательно)
    Масштаб, используемый для записи столбца. Дополнительные сведения см. в разделе описание bScale элемент структура DBBINDING

  • состояние (необязательно)
    Переменная-член, используемая для хранения состояния данного столбца. Состояние, указывающее, является ли значение столбца значение данных или другое значение, например Значение NULL. Возможные значения см. Состояние в Справочник по программированию OLE DB.

  • длина (необязательно)
    Переменная-член, используемая для хранения размер столбца в байтах.

Заметки

db_column связывает столбец указанной таблицы на переменную в наборе строк. Он обозначает данные члена, которые могут участвовать в OLE DB IAccessorпривязка на платформе. Этот атрибут обычно настраивается сопоставление столбцов определяемое с помощью макросов объекта-получателя OLE DB BEGIN_COLUMN_MAP" END_COLUMN_MAPи COLUMN_ENTRY. Они обрабатывают OLE DB структура DBBINDING привязать указанный столбец. Каждый член пометить с db_column атрибут займет одну запись в сопоставлении столбцов в форме записи столбца. Поэтому следует вызывать этот атрибут, где необходимо поместить бы сопоставление столбцов, т е в команде или класс таблицы.

Используйте db_column вместе с этим db_table OR db_command атрибуты.

Когда поставщик атрибута объекта-получателя применяет этот атрибут к классу компилятор переименовывает класс, _YourClassNameметод доступа, где YourClassName имя указанного класса, и компилятор также создает класс YourClassName, что является производным от _YourClassNameметод доступа. В представлении классов отобразится оба класса.

Примеры этого атрибута, используемого в приложении см. в разделе примеры AtlAgentи MultiRead.

Пример

В этом образце связывает столбец в таблице к a long элемент данных и определяет поля состояния и длины.

// db_column_1.cpp
// compile with: /LD
#include <atlbase.h>
#include <atlplus.h>
#include <atldbcli.h>

[ db_command(L"Select * from Products") ]
class CProducts {
   DBSTATUS m_dwProductIDStatus;
   DBLENGTH m_dwProductIDLength;

   [ db_column("1", status="m_dwProductIDStatus", length="m_dwProductIDLength") ] LONG m_ProductID;
};

В этом образце привязывает 4 столбца к a longстрока символов, отметку времени и a DB_NUMERIC целое число в другом порядке.

// db_column_2.cpp
// compile with: /LD
#include <atlbase.h>
#include <atlplus.h>
#include <atldbcli.h>

[ db_command(L"Select * from Products") ]
class CProducts {
   [db_column("1")] LONG m_OrderID;
   [db_column("2")] TCHAR m_CustomerID[6];
   [db_column("4")] DB_NUMERIC m_OrderDate;   
   [db_column("7", dbtype="DBTYPE_NUMERIC")] DB_NUMERIC m_ShipVia;
};

Требования

Контекст атрибута

Применение

класс" structучастник, метод

Repeatable

Нет

Обязательные атрибуты

None

Недопустимые атрибуты

None

Дополнительные сведения о контекстах атрибута см. в разделе Контексты атрибута.

См. также

Другие ресурсы

Атрибуты потребителя OLE DB

Атрибуты классов

Attributes Samples