db_column
행 집합의 변수에 지정된 열을 바인딩합니다.
구문
[ db_column(ordinal, dbtype, precision, scale, status, length) ]
매개 변수
서수
데이터를 바인딩할 행 집합의 필드에 해당하는 서수 열 번호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 형식 표시 기입니다.
전체 자릿수
(선택 사항) 열 항목에 사용할 전체 자릿수입니다. 자세한 내용은 DBBINDING 구조체 요소에 대한 설명을 bPrecision
참조하세요.
scale
(선택 사항) 열 항목에 사용할 배율입니다. 자세한 내용은 DBBINDING 구조체의 요소 설명을 bScale
참조하세요.
status
(선택 사항) 이 열의 상태를 유지하는 데 사용되는 멤버 변수입니다. 상태는 열 값이 데이터 값인지 아니면 NULL과 같은 다른 값인지를 나타냅니다. 가능한 값 은 OLE DB 프로그래머 참조의 상태를 참조하세요.
length
(선택 사항) 열의 크기를 바이트 단위로 유지하는 데 사용되는 멤버 변수입니다.
설명
db_column 행 집합의 변수에 지정된 테이블 열을 바인딩합니다. OLE DB IAccessor
기반 바인딩에 참여할 수 있는 멤버 데이터를 구분합니다. 이 특성은 OLE DB 소비자 매크로 BEGIN_COLUMN_MAP, END_COLUMN_MAP 및 COLUMN_ENTRY 사용하여 일반적으로 정의된 열 맵을 설정합니다. OLE DB DBBINDING 구조를 조작하여 지정된 열을 바인딩합니다. db_column 특성으로 표시한 각 멤버는 열 맵의 한 항목을 열 항목 형식으로 차지합니다. 따라서 이 특성을 호출하여 명령 또는 테이블 클래스에 열 맵을 배치합니다.
db_column db_table 또는 db_command 특성과 함께 사용합니다.
소비자 특성 공급자가 이 특성을 클래스에 적용하면 컴파일러는 클래스 이름을 _YourClassNameAccessor로 바꿉니다. 여기서 YourClassName은 클래스에 지정한 이름이고 컴파일러는 _YourClassName접근자에서 파생되는 YourClassName이라는 클래스도 만듭니다. 클래스 뷰에 두 클래스 모두 표시됩니다.
애플리케이션에서 사용되는 이 특성의 예는 MultiRead를 참조하세요.
예제
이 샘플은 테이블의 열을 데이터 멤버에 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개의 열을 해당 순서대로 long
문자열, 타임스탬프 및 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;
};
요구 사항
특성 컨텍스트 | 값 |
---|---|
적용 대상: | class , struct 멤버, 메서드 |
반복 가능 | 아니요 |
필수 특성 | None |
잘못된 특성 | None |
특성 컨텍스트에 대한 자세한 내용은 특성 컨텍스트를 참조하세요.