Bagikan melalui


db_column

Mengikat kolom tertentu ke variabel dalam set baris.

Sintaks

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

Parameter

Ordinal
Nomor kolom ordinal (DBCOLUMNINFO ordinal) atau nama kolom (ansi atau untai Unicode) yang terkait dengan bidang dalam set baris yang akan mengikat data. Jika Anda menggunakan angka, Anda dapat melewati ordinal berturut-turut (misalnya: 1, 2, 3, 5). Nama mungkin berisi spasi jika penyedia OLE DB yang Anda gunakan mendukungnya. Misalnya, Anda dapat menggunakan salah satu format berikut:

[db_column("2")] TCHAR szCity[30];
[db_column(L"city_name")] TCHAR szCity[30];

dbtype
(Opsional) Indikator Tipe OLE DB untuk entri kolom.

presisi
(Opsional) Presisi yang akan digunakan untuk entri kolom. Untuk detailnya, lihat deskripsi bPrecision elemen struktur DBBINDING

sisik
(Opsional) Skala yang akan digunakan untuk entri kolom. Untuk detailnya, lihat deskripsi bScale elemen struktur DBBINDING

status
(Opsional) Variabel anggota yang digunakan untuk menahan status kolom ini. Status menunjukkan apakah nilai kolom adalah nilai data atau beberapa nilai lainnya, seperti NULL. Untuk nilai yang mungkin, lihat Status di Referensi Programmer OLE DB.

length
(Opsional) Variabel anggota yang digunakan untuk menahan ukuran kolom dalam byte.

Keterangan

db_column mengikat kolom tabel yang ditentukan ke variabel dalam set baris. Ini memisahkan data anggota yang dapat berpartisipasi dalam pengikatan berbasis OLE DB IAccessor. Atribut ini menyiapkan peta kolom yang biasanya ditentukan menggunakan makro konsumen OLE DB BEGIN_COLUMN_MAP, END_COLUMN_MAP, dan COLUMN_ENTRY. Ini memanipulasi struktur OLE DB DBBINDING untuk mengikat kolom yang ditentukan. Setiap anggota yang Anda tandai dengan atribut db_column akan menempati satu entri di peta kolom dalam bentuk entri kolom. Oleh karena itu, Anda memanggil atribut ini di mana Anda akan menempatkan peta kolom, yaitu, di kelas perintah atau tabel.

Gunakan db_column bersama dengan atribut db_table atau db_command .

Ketika penyedia atribut konsumen menerapkan atribut ini ke kelas, pengkompilasi akan mengganti nama kelas menjadi _YourClassNameAccessor, di mana YourClassName adalah nama yang Anda berikan kelas, dan pengkompilasi juga akan membuat kelas yang disebut YourClassName, yang berasal dari _YourClassNameAccessor. Di Tampilan Kelas, Anda akan melihat kedua kelas.

Untuk contoh atribut ini yang digunakan dalam aplikasi, lihat MultiRead.

Contoh

Sampel ini mengikat kolom dalam tabel ke long anggota data dan menentukan bidang status dan panjang.

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

Sampel ini mengikat empat kolom ke long, string karakter, tanda waktu, dan DB_NUMERIC bilangan bulat, dalam urutan tersebut.

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

Persyaratan

Konteks atribut Nilai
Berlaku untuk class, struct, anggota, metode
Berulang No
Atribut yang diperlukan Tidak
Atribut tidak valid Tidak

Untuk informasi selengkapnya tentang konteks atribut, lihat Konteks Atribut.

Lihat juga

Atribut Konsumen OLE DB
Atribut Kelas