Fungsi JetComputeStats

Berlaku untuk: Windows | Windows Server

Fungsi JetComputeStats

Fungsi JetComputeStats memandu setiap indeks tabel untuk menghitung jumlah entri dalam indeks dengan tepat, dan jumlah kunci yang berbeda dalam indeks. Informasi ini, bersama dengan jumlah halaman database yang dialokasikan untuk indeks dan waktu komputasi saat ini disimpan dalam metadata indeks dalam database. Data ini kemudian dapat diambil dengan operasi informasi.

    JET_ERR JET_API JetComputeStats(
      __in          JET_SESID sesid,
      __in          JET_TABLEID tableid
    );

Parameter

sesid

Sesi yang digunakan untuk panggilan ini.

tableid

Kursor yang akan digunakan untuk panggilan ini. Menjelaskan tabel untuk menghitung statistik.

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_errClientRequestToStopJetService

Tidak mungkin untuk menyelesaikan operasi karena semua aktivitas pada instans yang terkait dengan sesi telah berhenti sebagai akibat dari panggilan ke JetStopService.

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_errNotInitialized

Tidak dimungkinkan untuk menyelesaikan operasi karena instans yang terkait dengan sesi belum diinisialisasi.

JET_errRestoreInProgress

Tidak dimungkinkan untuk menyelesaikan operasi karena operasi pemulihan sedang berlangsung pada instans yang terkait dengan sesi.

JET_errRollbackError

Terjadi kesalahan yang mengharuskan operasi ini untuk memutar kembali semua perubahan, tetapi pembatalan transaksi itu sendiri gagal.

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, statistik terbaru disimpan dalam katalog database untuk tabel yang dijelaskan dengan kursor yang diberikan.

Jika gagal, tidak ada pembaruan apa pun yang dilakukan pada database.

Keterangan

Operasi ini dapat menjadi sumber daya yang mengkonsumsi karena setiap indeks dalam tabel harus berjalan secara keseluruhan. JetGetRecordPosition dapat digunakan untuk mendapatkan perkiraan kasar tentang jumlah entri dalam indeks, tetapi tidak dapat dengan sendirinya memperkirakan jumlah nilai yang berbeda dalam indeks.

Data yang dihitung oleh operasi ini mulai kedaluarsa dan tabel kemudian diperbarui.

Updates ke database yang dibuat oleh JetComputeStats dibuat dengan cara malas. Ini berarti bahwa tidak ada flush log yang akan disertai dengan operasi ini dan crash sistem selanjutnya ke pengembalian JET_errSuccess oleh JetComputeStats masih dapat menyebabkan pembaruan ini hilang.

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.

Lihat juga

JET_ERR
JET_TABLEID
JET_SESID
JetGetRecordPosition
JetGetTableInfo
JetGetTableIndexInfo
JetStopService