JET_CBTYP

Berlaku untuk: Windows | Server Windows

JET_CBTYP

Grup konstanta JET_CBTYP menjelaskan semua titik yang mungkin dalam operasi yang akan diberi tahu mesin database kepada aplikasi dengan memanggil fungsi panggilan balik JET_CALLBACK . Mesin database melewati salah satu konstanta ini dalam parameter cbtyp dari fungsi panggilan balik. Arti parameter lain yang diteruskan oleh mesin database dalam panggilan ini bergantung pada JET_CBTYP tertentu yang diteruskan.

Windows XP: Grup konstanta JET_CBTYP diperkenalkan di Windows XP.

Konstanta/nilai

Deskripsi

JET_cbtypNull
0x00000000

Panggilan balik ini dicadangkan dan selalu dianggap tidak valid.

JET_cbtypFinalize
0x00000001

Panggilan balik ini dicadangkan untuk digunakan di masa mendatang.

JET_cbtypBeforeInsert
0x00000002

Panggilan balik ini akan terjadi tepat sebelum rekaman baru dimasukkan ke dalam tabel dengan panggilan ke JetUpdate.

Penunjuk fungsi untuk alasan panggilan balik ini diteruskan ke JetCreateTableColumnIndex melalui JET_TABLECREATE atau dikonfigurasi pada runtime dengan menggunakan JetRegisterCallback. Untuk informasi selengkapnya, lihat JET_TABLECREATE atau JetRegisterCallback.

Parameter panggilan balik akan memiliki nilai berikut:

  • sesi: Sesi yang memiliki rekaman yang akan disisipkan.

  • dbid: ID database tabel yang berisi rekaman yang akan disisipkan.

  • tableid: Kursor yang telah menyiapkan rekaman baru untuk disisipkan. Penting untuk dicatat bahwa nilai versi atau kolom kenaikan otomatis apa pun mungkin tidak benar saat ini.

  • pvArg1: NULL

  • pvArg2: NULL

  • pvContext: Penunjuk konteks diteruskan ke JetRegisterCallback atau NULL.

  • ulUnused: NULL Jika kesalahan dikembalikan oleh panggilan balik, operasi yang berasal dari panggilan balik akan gagal dengan kesalahan tersebut.

JET_cbtypAfterInsert
0x00000004

Panggilan balik ini akan terjadi tepat setelah rekaman baru dimasukkan ke dalam tabel dengan panggilan ke JetUpdate tetapi sebelum JetUpdate kembali ke pemanggilnya.

Penunjuk fungsi untuk alasan panggilan balik ini diteruskan ke JetCreateTableColumnIndex melalui JET_TABLECREATE atau dikonfigurasi pada runtime dengan menggunakan JetRegisterCallback. Untuk informasi selengkapnya, lihat JET_TABLECREATE atau JetRegisterCallback.

Parameter panggilan balik akan memiliki nilai berikut:

  • sesi: Sesi yang memiliki catatan yang baru saja dimasukkan.

  • dbid: ID database tabel yang berisi rekaman yang baru saja disisipkan.

  • tableid: Kursor pada tabel tempat rekaman yang baru saja disisipkan. Perhatikan bahwa kursor masih diposisikan pada entri indeks yang sama seperti yang ada di sebelum menyisipkan panggilan balik. Perhatikan lebih lanjut bahwa entri indeks ini mungkin tidak terkait dengan cara apa pun ke rekaman yang dimasukkan.

  • pvArg1: NULL

  • pvArg2: NULL

  • pvContext: Penunjuk konteks diteruskan ke JetRegisterCallback atau NULL.

  • ulUnused: NULL Jika kesalahan dikembalikan oleh panggilan balik, itu akan diabaikan.

JET_cbtypBeforeReplace
0x00000008

Panggilan balik ini akan terjadi tepat sebelum rekaman yang ada dalam tabel yang diubah oleh panggilan ke JetUpdate.

Penunjuk fungsi untuk alasan panggilan balik ini diteruskan ke JetCreateTableColumnIndex melalui JET_TABLECREATE atau dikonfigurasi pada runtime dengan menggunakan JetRegisterCallback. Untuk informasi selengkapnya, lihat JET_TABLECREATE atau JetRegisterCallback.

Parameter panggilan balik akan memiliki nilai berikut:

  • sesi: Sesi yang memiliki catatan yang akan diubah.

  • dbid: ID database tabel yang berisi rekaman yang akan diubah.

  • tableid: Kursor yang diposisikan pada entri indeks yang terkait dengan rekaman yang akan diubah. Penting untuk dicatat bahwa nilai versi atau kolom kenaikan otomatis apa pun mungkin tidak benar saat ini.

  • pvArg1: NULL

  • pvArg2: NULL

  • pvContext: Penunjuk konteks diteruskan ke JetRegisterCallback atau NULL.

  • ulUnused: NULL Jika kesalahan dikembalikan oleh panggilan balik, operasi yang berasal dari panggilan balik akan gagal dengan kesalahan tersebut.

JET_cbtypAfterReplace
0x00000010

Panggilan balik ini akan terjadi tepat setelah rekaman yang ada dalam tabel telah diubah oleh panggilan ke JetUpdate tetapi sebelum JetUpdate kembali ke pemanggilnya.

Penunjuk fungsi untuk alasan panggilan balik ini diteruskan ke JetCreateTableColumnIndex melalui JET_TABLECREATE atau dikonfigurasi pada runtime dengan menggunakan JetRegisterCallback. Untuk informasi selengkapnya, lihat JET_TABLECREATE atau JetRegisterCallback.

Parameter panggilan balik akan memiliki nilai berikut:

  • sesi: Sesi yang memiliki catatan yang baru saja diubah.

  • dbid: ID database tabel yang berisi rekaman yang baru saja diubah.

  • tableid: Kursor yang diposisikan pada entri indeks yang terkait dengan rekaman yang baru saja diubah.

  • pvArg1: NULL

  • pvArg2: NULL

  • pvContext: Penunjuk konteks diteruskan ke JetRegisterCallback atau NULL.

  • ulUnused: NULL Jika kesalahan dikembalikan oleh panggilan balik, itu akan diabaikan.

JET_cbtypBeforeDelete
0x00000020

Panggilan balik ini akan terjadi tepat sebelum rekaman yang ada dalam tabel dihapus oleh panggilan ke JetDelete.

Penunjuk fungsi untuk alasan panggilan balik ini diteruskan ke JetCreateTableColumnIndex melalui JET_TABLECREATE atau dikonfigurasi pada runtime dengan menggunakan JetRegisterCallback. Untuk informasi selengkapnya, lihat JET_TABLECREATE atau JetRegisterCallback.

Parameter panggilan balik akan memiliki nilai berikut:

  • sesi: Sesi yang memiliki catatan yang akan dihapus.

  • dbid: ID database tabel yang berisi rekaman yang akan dihapus.

  • tableid: Kursor yang diposisikan pada entri indeks yang terkait dengan rekaman yang akan dihapus.

  • pvArg1: NULL

  • pvArg2: NULL

  • pvContext: Penunjuk konteks diteruskan ke JetRegisterCallback atau NULL.

  • ulUnused: NULL Jika kesalahan dikembalikan oleh panggilan balik, operasi yang berasal dari panggilan balik akan gagal dengan kesalahan tersebut.

JET_cbtypAfterDelete
0x00000040

Panggilan balik ini akan terjadi tepat setelah rekaman yang ada dalam tabel telah dihapus oleh panggilan ke JetDelete tetapi sebelum JetDelete kembali ke pemanggilnya.

Penunjuk fungsi untuk alasan panggilan balik ini diteruskan ke JetCreateTableColumnIndex melalui JET_TABLECREATE atau dikonfigurasi pada runtime dengan menggunakan JetRegisterCallback. Untuk informasi selengkapnya, lihat JET_TABLECREATE atau JetRegisterCallback.

Parameter panggilan balik akan memiliki nilai berikut:

  • sesi: Sesi yang memiliki catatan yang baru saja dihapus.

  • dbid: ID database tabel yang berisi rekaman yang baru saja dihapus.

  • tableid: Kursor yang diposisikan pada entri indeks yang terkait dengan rekaman yang baru saja dihapus.

  • pvArg1: NULL

  • pvArg2: NULL

  • pvContext: penunjuk konteks diteruskan ke JetRegisterCallback atau NULL.

  • ulUnused: NULL

Jika kesalahan dikembalikan oleh panggilan balik, kesalahan akan diabaikan.

JET_cbtypUserDefinedDefaultValue
0x00000080

Panggilan balik ini akan terjadi ketika mesin perlu mengambil nilai default kolom yang ditentukan pengguna dari aplikasi. Panggilan balik ini pada dasarnya adalah implementasi terbatas dari JetRetrieveColumn yang dievaluasi oleh aplikasi. Maksimal satu nilai kolom dapat dikembalikan untuk nilai default yang ditentukan pengguna.

Penunjuk fungsi untuk alasan panggilan balik ini diteruskan ke JetAddColumn dengan struktur JET_USERDEFINEDDEFAULT atau diteruskan ke JetCreateTableColumnIndex dengan struktur JET_USERDEFINEDDEFAULT dalam struktur JET_COLUMNCREATE dalam struktur JET_TABLECREATE .

Parameter panggilan balik akan memiliki nilai berikut:

  • sesid: Sesi yang menghitung nilai default yang ditentukan pengguna

  • dbid: ID database tabel yang berisi nilai default yang ditentukan pengguna

  • tableid: Kursor yang diposisikan pada rekaman tempat nilai default yang ditentukan pengguna sedang diambil

  • pvArg1: Buffer output untuk nilai default yang ditentukan pengguna

  • pvArg2: Pada input, ini adalah ukuran buffer output. Pada output, ini adalah ukuran aktual dari nilai default yang ditentukan pengguna. dalam kedua kasus, ukurannya adalah bilangan bulat yang tidak ditandatangani 32-bit.

  • pvContext: Penunjuk ke buffer yang berisi data pengguna yang ditentukan dalam struktur JET_USERDEFINEDDEFAULT saat kolom dibuat atau NULL jika tidak ada konteks yang disediakan.

  • ulUnused: ID kolom kolom tempat nilai default yang ditentukan pengguna sedang diambil.

Jika kesalahan dikembalikan oleh panggilan balik, operasi yang berasal dari panggilan balik akan gagal dengan kesalahan tersebut.

Jika JET_wrnBufferTruncated dikembalikan oleh panggilan balik, operasi akan dilanjutkan, tetapi seluruh nilai tidak diambil selama panggilan balik.

Jika JET_wrnColumnNull dikembalikan oleh panggilan balik, operasi akan dilanjutkan, tetapi nilai default yang ditentukan pengguna untuk kolom adalah NULL.

JET_cbtypOnlineDefragCompleted
0x00000100

Panggilan balik ini akan terjadi ketika defragmentasi online database seperti yang dimulai oleh JetDefragment telah berhenti karena proses sedang diselesaikan atau batas waktu yang dicapai.

Penunjuk fungsi untuk alasan panggilan balik ini diteruskan ke JetDefragment. Untuk informasi selengkapnya, lihat JetDefragment.

Parameter panggilan balik akan memiliki nilai berikut:

  • sesid: Sesi yang digunakan untuk melakukan defragmentasi online untuk database atau JET_sesidNil untuk file streaming.

  • dbid: ID database database yang didefragmentasi atau JET_dbidNil untuk file streaming.

  • tableid: JET_tableidNil

  • pvArg1: NULL

  • pvArg2: NULL

  • pvContext: NULL

  • ulUnused: NULL

Jika kesalahan dikembalikan oleh panggilan balik, itu akan diabaikan.

JET_cbtypFreeCursorLS
0x00000200

Panggilan balik ini akan terjadi ketika aplikasi perlu membersihkan handel konteks untuk Storage Lokal yang terkait dengan kursor yang sedang dirilis oleh mesin database. Untuk informasi selengkapnya, lihat JetSetLS.

Penunjuk fungsi untuk alasan panggilan balik ini dikonfigurasi dengan menggunakan JetSetSystemParameter dengan JET_paramRuntimeCallback.

Parameter panggilan balik akan memiliki nilai berikut:

  • sesid: JET_sesidNil

  • dbid: JET_dbidNil

  • tableid: JET_tableidNil

  • pvArg1: Set handel konteks menggunakan JetSetLS

  • pvArg2: NULL

  • pvContext: NULL

  • ulUnused: NULL

Jika kesalahan dikembalikan oleh panggilan balik, itu akan diabaikan.

JET_cbtypFreeTableLS
0x00000400

Panggilan balik ini akan terjadi sebagai akibat dari kebutuhan aplikasi untuk membersihkan handel konteks untuk Storage Lokal yang terkait dengan tabel yang sedang dirilis oleh mesin database. Untuk informasi selengkapnya, lihat JetSetLS.

Penunjuk fungsi untuk alasan panggilan balik ini dikonfigurasi dengan menggunakan JetSetSystemParameter dengan JET_paramRuntimeCallback.

Parameter panggilan balik akan memiliki nilai berikut:

  • sesid: JET_sesidNil

  • dbid: JET_dbidNil

  • tableid: JET_tableidNil

  • pvArg1: Set handel konteks menggunakan JetSetLS.

  • pvArg2: NULL

  • pvContext: NULL

  • ulUnused: NULL

Jika kesalahan dikembalikan oleh panggilan balik, itu akan diabaikan.

Persyaratan

Persyaratan Nilai

Klien

Membutuhkan Windows Vista atau Windows XP.

Server

Memerlukan Windows Server 2008 atau Windows Server 2003.

Header

Dinyatakan dalam Esent.h.

Lihat juga

JET_CALLBACK