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 |
Дополнительные сведения о контекстах атрибута см. в разделе Контексты атрибута.