Bagikan melalui


Fungsi JetCreateInstance2

Berlaku untuk: Windows | Windows Server

Fungsi JetCreateInstance2

Fungsi JetCreateInstance2 digunakan untuk mengalokasikan instans baru mesin database untuk digunakan dalam satu proses, dengan nama tampilan yang ditentukan.

Windows XP:JetCreateInstance2 diperkenalkan di Windows XP.

    JET_ERR JET_API JetCreateInstance2(
      __out         JET_INSTANCE* pinstance,
      __in_opt      const tchar* szInstanceName,
      __in_opt      const tchar* szDisplayName,
      __in          JET_GRBIT grbit
    );

Parameter

pinstance

Buffer output yang akan menerima instans yang baru dibuat.

szInstanceName

Menentukan pengidentifikasi string unik untuk instans yang akan dibuat. String ini harus unik dalam proses tertentu yang menghosting mesin database.

Catatan Nilai NULL diperlakukan sebagai pengidentifikasi string yang valid untuk instans. Hanya satu instans yang mungkin memiliki pengidentifikasi string NULL.

szDisplayName

Nama tampilan untuk instans yang akan dibuat. Ketika parameter ini tidak ada, nilainya dianggap NULL.

grbit

Disiapkan untuk penggunaan masa mendatang. Ketika parameter ini tidak ada, nilainya dianggap nol.

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_errInstanceNameInUse

Nama instans yang ditentukan sudah digunakan untuk proses ini.

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 JetCreateInstance ketika pinstance adalah NULL.

JET_errRunningInOneInstanceMode

Operasi gagal karena tidak dapat digunakan ketika mesin database beroperasi dalam mode instans tunggal (mode kompatibilitas Windows 2000).

JET_errTooManyInstances

Instans baru tidak dapat dibuat karena jumlah maksimum instans telah tercapai. Jumlah maksimum instans yang didukung dikonfigurasi menggunakan JetSetSystemParameter menggunakan JET_paramMaxInstances.

Setelah berhasil, instans baru akan dialokasikan dan pengidentifikasi untuk instans tersebut akan dikembalikan. Pada titik ini, semua parameter sistem untuk instans akan memiliki nilai parameter sistem default global. Setelah instans dialokasikan, instans perlu dihentikan dan/atau dikosongkan nanti.

Jika gagal, kesalahan yang mewakili penyebab kegagalan akan dikembalikan dan tidak ada instans yang akan dialokasikan.

Keterangan

Instans harus diinisialisasi dengan panggilan ke JetInit sebelum dapat digunakan oleh apa pun selain JetSetSystemParameter.

Instans dihancurkan oleh panggilan ke fungsi JetTerm , bahkan jika instans tersebut tidak pernah diinisialisasi menggunakan JetInit. Jumlah maksimum instans yang dapat dibuat kapan saja dikontrol oleh JET_paramMaxInstances, yang dapat dikonfigurasi dengan panggilan ke JetSetSystemParameter. Instans adalah unit pemulihan untuk mesin database. Ini mengontrol siklus hidup semua file yang digunakan untuk melindungi integritas data dalam sekumpulan file database. File-file ini mencakup file titik pemeriksaan dan file log transaksi.

Jika fungsi berhasil, mesin database akan secara otomatis diubah ke mode multi-instans sebagai efek samping dari panggilan ini. Jika aplikasi ingin mengizinkan hanya satu instans dalam proses, Maka JetInit harus digunakan untuk memulai mesin database dalam mode kompatibilitas Windows 2000.

Jika ada, parameter szDisplayName akan digunakan untuk mengidentifikasi instans di tempat-tempat seperti Log Peristiwa atau terhadap pemanggil lain seperti aplikasi cadangan (melalui fungsi seperti JetGetInstanceInfo atau JetOSSnapshotFreeze). Jika nama tampilan tidak disediakan, parameter szInstanceName unik akan digunakan sebagai gantinya, jika ada, jika tidak, string kosong akan dikembalikan. Jika mesin tidak memiliki mode berjalan yang diatur, setelah panggilan ini, mesin akan diatur ke mode multi-instans.

Urutan start-up yang khas untuk proses yang berpotensi menjalankan beberapa instans Jet adalah:

  • Panggilan ke JetCreateInstance2 yang akan mengalokasikan dan memberi nama instans.

  • Beberapa panggilan ke JetSetSystemParameter untuk instans tersebut untuk mengatur parameter sistem yang berbeda. Perhatikan bahwa beberapa parameter sistem harus unik untuk setiap instans (seperti JET_paramSystemPath atau JET_paramLogFilePath) sehingga kemungkinan besar, masing-masing harus diatur.

  • Mulai instans menggunakan JetInit atau JetInit2. Untuk mengakhiri dan/atau membebaskan instans, gunakan JetTerm atau JetTerm2.

Jika ini adalah instans pertama yang dimulai, ada sejumlah langkah tambahan yang akan dijalankan selama panggilan ini untuk melakukan inisialisasi dan konfigurasi sistem dasar. Sejumlah langkah tersebut dapat mengakibatkan kesalahan tertentu yang dimulai dengan JET_errOutOfMemory tetapi yang lain juga (lihat Mengembalikan Nilai untuk informasi selengkapnya).

Persyaratan

Persyaratan Nilai

Klien

Memerlukan Windows Vista atau Windows XP.

Server

Memerlukan Windows Server 2008 atau Windows Server 2003.

Header

Dinyatakan dalam Esent.h.

Pustaka

Gunakan ESENT.lib.

DLL

Membutuhkan ESENT.dll.

Unicode

Diimplementasikan sebagai JetCreateInstance2W (Unicode) dan JetCreateInstance2A (ANSI).

Lihat juga

JET_ERR
JET_INSTANCE
JetCreateInstance
JetEnableMultiInstance
JetGetInstanceInfo
JetInit
JetInit2
JetOSSnapshotFreeze
JetSetSystemParameter
JetTerm
JetTerm2