Struktur JET_COLUMNBASE
Berlaku untuk: Windows | Windows Server
Struktur JET_COLUMNBASE
Struktur JET_COLUMNBASE menjelaskan parameter kolom dasar. Fungsi JetGetColumnInfo dan JetGetTableColumnInfo menggunakan struktur JET_COLUMNBASE .
typedef struct {
unsigned long cbStruct;
JET_COLUMNID columnid;
JET_COLTYP coltyp;
unsigned short wCountry;
unsigned short langid;
unsigned short cp;
unsigned short wFiller;
unsigned long cbMax;
JET_GRBIT grbit;
tchar szBaseTableName[256];
tchar szBaseColumnName[256];
} JET_COLUMNBASE;
Anggota
cbStruct
Ukuran struktur ini, dalam byte. Atur cbStruct ke sizeof( JET_COLUMNBASE ).
columnid
Dicadangkan. Atur columnid ke 0 (nol).
coltyp
Jenis kolom (misalnya, teks, biner, atau numerik). Untuk informasi selengkapnya, lihat JET_COLTYP.
wCountry
Dicadangkan. Atur ke 0 (nol).
bahasa langid
Dicadangkan. Atur ke 0 (nol).
Cp
Halaman kode untuk kolom. Satu-satunya nilai yang valid untuk kolom teks adalah Bahasa Inggris (1252) dan Unicode (1200). Nilai nol berarti default akan digunakan (Inggris, 1252). Jika kolom bukan kolom teks, halaman kode secara otomatis diatur ke nol.
wFiller
Dicadangkan. Atur ke 0 (nol).
cbMax
Panjang maksimum, dalam byte, dari kolom panjang variabel, atau panjang aktual, dalam byte, dari kolom panjang tetap.
grbit
Opsi untuk kolom, termasuk nol atau beberapa nilai berikut.
Nilai |
Makna |
---|---|
JET_bitColumnFixed |
Kolom diperbaiki dan menempati jumlah ruang yang sama dalam baris terlepas dari berapa banyak data yang dikandungnya. JET_bitColumnFixed tidak dapat digabungkan dengan JET_bitColumnTagged, dan tidak dapat digunakan ketika anggota coltyp diatur ke JET_coltypLongText atau JET_coltypLongBinary. |
JET_bitColumnTagged |
Kolom ditandai dan menempati ruang dalam database hanya jika berisi data. JET_bitColumnTagged tidak dapat digabungkan dengan JET_bitColumnFixed, JET_bitColumnVersion, atau JET_bitColumnEscrowUpdate. |
JET_bitColumnNotNULL |
Kolom tidak boleh diatur ke nilai NULL . JET_bitColumnNotNULL tidak dapat digabungkan dengan JET_bitColumnUserDefinedDefault. |
JET_bitColumnVersion |
Kolom adalah kolom versi yang menentukan versi baris. Nilai kolom ini dimulai pada nol dan secara otomatis bertahap untuk setiap pembaruan baris. JET_bitColumnVersion hanya dapat digunakan ketika anggota coltyp diatur ke JET_coltypLong dan tidak dapat dikombinasikan dengan JET_bitColumnAutoincrement, JET_bitColumnEscrowUpdate, JET_bitColumnTagged, atau JET_bitColumnUserDefinedDefault. |
JET_bitColumnAutoincrement |
Kolom secara otomatis dinaikkan. Angka tersebut adalah angka yang meningkat, dan dijamin unik dalam tabel. Namun, angka-angkanya mungkin tidak berurutan. Misalnya, jika lima baris disisipkan ke dalam tabel, kolom yang ditautkan secara otomatis dapat berisi nilai { 1, 2, 6, 7, 8 }. JET_bitColumnAutoincrement hanya dapat digunakan ketika anggota coltyp diatur ke JET_coltypLong atau JET_coltypCurrency dan tidak dapat dikombinasikan dengan JET_bitColumnEscrowUpdate, JET_bitColumnUserDefinedDefault, atau JET_bitColumnVersion. Windows 2000: JET_bitColumnVersion hanya dapat digunakan ketika anggota coltyp diatur ke JET_coltypLong. |
JET_bitColumnUpdatable |
Hanya berlaku untuk panggilan ke JetGetColumnInfo. JET_bitColumnUpdatable tidak dapat digabungkan dengan JET_bitColumnUserDefinedDefault. |
JET_bitColumnTTKey |
Hanya berlaku pada panggilan ke JetOpenTable. |
JET_bitColumnTTDescending |
Hanya berlaku pada panggilan ke JetOpenTempTable. |
JET_bitColumnMultiValued |
Kolom dapat bernilai banyak. Kolom multinilai dapat memiliki nilai nol, satu, atau lebih yang terkait dengannya. Berbagai nilai dalam kolom multinilai diidentifikasi dengan angka di anggota itagSequence dari berbagai struktur, misalnya, JET_RETINFO, JET_SETINFO, JET_SETCOLUMN, JET_RETRIEVECOLUMN, JET_ENUMCOLUMNVALUE. Kolom multinilai harus diberi tag kolom; artinya, kolom tersebut mungkin tidak panjang tetap atau kolom dengan panjang variabel. |
JET_bitColumnEscrowUpdate |
Menentukan bahwa kolom adalah kolom pembaruan escrow yang dapat diperbarui secara bersamaan oleh sesi yang berbeda dengan JetEscrowUpdate dan akan memiliki konsistensi transaksional.
|
JET_bitColumnUnversioned |
Kolom dibuat tanpa nomor versi. Ini berarti bahwa transaksi lain yang mencoba menambahkan kolom dengan nama yang sama akan gagal. JET_bitColumnUnversioned hanya digunakan dengan JetAddColumn. Ini tidak dapat digunakan dalam transaksi. |
JET_bitColumnMaybeNull |
Disiapkan untuk penggunaan masa mendatang. JET_bitColumnMaybeNull tidak dapat digabungkan dengan JET_bitColumnUserDefinedDefault. |
JET_bitColumnFinalize |
Jangan gunakan. Gunakan JET_bitColumnDeleteOnZero sebagai gantinya. Kolom dapat diselesaikan. Kolom yang dapat diselesaikan adalah kolom pembaruan escrow yang menyebabkan baris dihapus saat kolom mencapai nol. Versi mendatang dapat memanggil fungsi panggilan balik sebagai gantinya (Lihat JET_CALLBACK). Kolom yang dapat diselesaikan harus berupa kolom pembaruan escrow. JET_bitColumnFinalize tidak dapat digabungkan dengan JET_bitColumnUserDefinedDefault. |
JET_bitColumnUserDefinedDefault |
Nilai default untuk kolom akan disediakan oleh fungsi panggilan balik. Lihat JET_CALLBACK. Kolom yang memiliki default yang ditentukan pengguna harus berupa kolom yang diberi tag. Jika JET_bitColumnUserDefinedDefault ditentukan, pvDefault harus menunjuk ke struktur JET_USERDEFINEDDEFAULT , dan cbDefault harus diatur ke sizeof( JET_USERDEFINEDDEFAULT ). JET_bitColumnUserDefinedDefault tidak dapat digabungkan dengan JET_bitColumnFixed, JET_bitColumnNotNULL, JET_bitColumnVersion, JET_bitColumnAutoincrement, JET_bitColumnUpdatable, JET_bitColumnEscrowUpdate, JET_bitColumnFinalize, JET_bitColumnDeleteOnZero, atau JET_bitColumnMaybeNull. |
JET_bitColumnDeleteOnZero |
Kolom adalah kolom pembaruan escrow dan ketika mencapai nol, rekaman akan dihapus. Penggunaan umum untuk kolom delete-on-zero adalah sebagai bidang jumlah referensi. Saat jumlah referensi jatuh ke nol, rekaman akan dihapus. Kolom delete-on-zero harus berupa kolom pembaruan escrow. JET_bitColumnDeleteOnZero menggantikan JET_bitColumnFinalize. JET_bitColumnDeleteOnZero tidak dapat digabungkan dengan JET_bitColumnFinalize atau JET_bitColumnUserDefinedDefault, dan tidak dapat digunakan dengan kolom default yang ditentukan pengguna. |
szBaseTableName
Tabel tempat tabel saat ini mewarisi DDL-nya.
szBaseColumnName
Nama kolom dalam tabel templat.
Keterangan
JET_COLUMNBASE berisi banyak informasi yang sama dengan JET_COLUMNDEF, tetapi menambahkan bidang string untuk menjelaskan tabel dasar (jika DDL hierarkis digunakan).
Persyaratan
Persyaratan | Nilai |
---|---|
Klien |
Memerlukan Windows Vista, Windows XP, atau Windows 2000 Professional. |
Server |
Memerlukan Windows Server 2008, Windows Server 2003, atau Windows 2000 Server. |
Header |
Dinyatakan dalam Esent.h. |
Unicode |
Diimplementasikan sebagai JET_COLUMNBASE_W (Unicode) dan JET_COLUMNBASE_A (ANSI). |
Lihat juga
JET_CALLBACK
JET_COLTYP
JET_COLUMNDEF
JET_COLUMNID
JET_GRBIT
JET_SESID
JET_TABLEID
JET_USERDEFINEDDEFAULT
JetGetColumnInfo
JetGetTableColumnInfo
JetRenameColumn
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk