Fungsi JetSetCurrentIndex
Berlaku untuk: Windows | Windows Server
Fungsi JetSetCurrentIndex
Fungsi JetSetCurrentIndex dapat digunakan untuk mengatur indeks kursor saat ini. Indeks kursor saat ini menentukan rekaman mana dalam tabel yang terlihat oleh kursor tersebut dan urutan munculnya dengan memilih kumpulan entri indeks yang akan digunakan untuk mengekspos rekaman tersebut.
JET_ERR JET_API JetSetCurrentIndex(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__in_opt const tchar* szIndexName
);
Parameter
sesid
Sesi yang digunakan untuk panggilan ini.
tableid
Kursor yang digunakan untuk panggilan ini.
szIndexName
Nama indeks yang akan dipilih untuk kursor.
Jika parameter ini null atau string kosong maka indeks berkluster akan dipilih. Jika indeks utama didefinisikan untuk tabel, indeks tersebut akan dipilih karena sama dengan indeks berkluster. Jika tidak ada indeks utama yang ditentukan untuk tabel, indeks berurutan akan dipilih. Indeks berurutan tidak memiliki definisi indeks. Lihat JetCreateIndex untuk informasi selengkapnya.
Jika pindexid bukan NULL, maka nama indeks akan diabaikan dan indeks akan dipilih oleh ID indeksnya.
Tampilkan Nilai
Fungsi ini mengembalikan jenis data JET_ERR dengan salah satu kode pengembalian berikut. Untuk informasi selengkapnya tentang kemungkinan kesalahan ESE, lihat Kesalahan Mesin Penyimpanan yang Dapat Diperluas dan Parameter Penanganan Kesalahan.
Menampilkan kode |
Deskripsi |
---|---|
JET_errSuccess |
Operasi berhasil diselesaikan. |
JET_errBadItagSequence |
Indeks sekunder sedang dipilih dengan opsi JET_bitNoMove dan tidak ada nilai untuk kolom kunci multinilai pertama dalam definisi indeks baru yang sesuai dengan nomor urutan yang ditentukan. |
JET_errClientRequestToStopJetService |
Tidak mungkin untuk menyelesaikan operasi karena semua aktivitas pada instans yang terkait dengan sesi telah berhenti sebagai akibat dari panggilan ke JetStopService. |
JET_errInvalidIndexId |
Konten ID indeks tidak valid atau telah kedaluwarsa dan perlu disegarkan. Ini dapat terjadi untuk JetSetCurrentIndex ketika:
|
JET_errInstanceUnavailable |
Tidak dimungkinkan untuk menyelesaikan operasi karena instans yang terkait dengan sesi telah mengalami kesalahan fatal yang mengharuskan akses ke semua data dicabut untuk melindungi integritas data tersebut. Kesalahan ini hanya akan dikembalikan oleh Windows XP dan rilis yang lebih baru. |
JET_errInvalidName |
Salah satu nama objek yang ditentukan tidak valid. Semua nama objek harus sesuai dengan sekumpulan aturan yang sama. Aturan ini adalah sebagai berikut:
|
JET_errInvalidParameter |
Salah satu parameter yang disediakan berisi nilai yang tidak terduga atau berisi nilai yang tidak masuk akal ketika dikombinasikan dengan nilai parameter lain. Ini dapat terjadi untuk JetSetCurrentIndex ketika pindexid bukan NULL dan pindexid-cbStruct> bukan dari ukuran yang diharapkan (Windows XP dan rilis sebelumnya). |
JET_errNoCurrentRecord |
Indeks sekunder sedang dipilih dengan opsi JET_bitNoMove dan tidak ada entri indeks dalam indeks baru yang sesuai dengan rekaman yang terkait dengan entri indeks pada posisi kursor saat ini pada indeks lama. |
JET_errNotInitialized |
Tidak dimungkinkan untuk menyelesaikan operasi karena instans yang terkait dengan sesi belum diinisialisasi. |
JET_errOutOfCursors |
Mesin telah menghabiskan kumpulan sumber dayanya yang digunakan untuk membuka kursor. Jumlah maksimum kursor yang dapat dibuka kapan saja dikontrol menggunakan JET_paramMaxCursors. Lihat JetSetSystemParameter untuk informasi selengkapnya. Ini dapat terjadi untuk JetSetCurrentIndex ketika indeks sekunder telah dipilih dan mesin tidak dapat membuka kursor internal untuk menggunakan indeks tersebut. |
JET_errRestoreInProgress |
Tidak dimungkinkan untuk menyelesaikan operasi karena operasi pemulihan sedang berlangsung pada instans yang terkait dengan sesi. |
JET_errSessionSharingViolation |
Sesi yang sama tidak dapat digunakan untuk lebih dari satu utas secara bersamaan. Kesalahan ini hanya akan dikembalikan oleh Windows XP dan rilis yang lebih baru. |
JET_errTermInProgress |
Tidak dimungkinkan untuk menyelesaikan operasi karena instans yang terkait dengan sesi sedang dimatikan. |
Jika berhasil, indeks kursor saat ini diatur ke indeks yang diminta. Entri indeks sekarang dapat dicari menggunakan JetSeek sesuai dengan definisi indeks indeks yang diminta. Entri indeks juga dapat dijumlahkan menggunakan JetMove dalam urutan yang ditentukan oleh definisi indeks tersebut. Posisi kursor saat ini diatur ke entri indeks pertama pada indeks (JET_bitMoveFirst) atau ke entri indeks tertentu yang terkait dengan posisi kursor saat ini pada indeks lama (JET_bitNoMove). Tidak ada perubahan pada status database yang akan terjadi.
Jika gagal, indeks saat ini dan posisi kursor saat ini berada dalam status tidak terdefinisi. Tidak ada perubahan pada status database yang akan terjadi.
Keterangan
Jika petunjuk ID indeks kedaluarsa maka API hanya gagal. Tidak ada fallback ke nama teks indeks dalam kasus ini seperti yang mungkin diharapkan. Fallback ini harus dilakukan secara manual oleh pemanggil API.
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. |
Pustaka |
Gunakan ESENT.lib. |
DLL |
Membutuhkan ESENT.dll. |
Unicode |
Diimplementasikan sebagai JetSetCurrentIndexW (Unicode) dan JetSetCurrentIndexA (ANSI). |
Lihat juga
JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JET_INDEXID
JetCreateIndex
JetGetCurrentIndex
JetGetIndexInfo
JetGetTableIndexInfo
JetMove
JetSeek
JetSetCurrentIndex
JetSetSystemParameter
JetStopService
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