Bagikan melalui


Fungsi JetBeginTransaction2

Berlaku untuk: Windows | Windows Server

Fungsi JetBeginTransaction2

Fungsi JetBeginTransaction2 menyebabkan sesi memasuki transaksi dan membuat titik penyimpanan baru. Fungsi ini dapat dipanggil lebih dari sekali dalam satu sesi untuk membuat titik penyimpanan tambahan. Titik penyimpanan ini dapat digunakan untuk menyimpan atau membuang perubahan pada database secara selektif.

    JET_ERR JET_API JetBeginTransaction2(
      __in          JET_SESID sesid,
      __in          JET_GRBIT grbit
    );

Parameter

sesid

Sesi yang digunakan untuk panggilan ini.

grbit

Sekelompok bit yang berisi opsi yang akan digunakan untuk panggilan ini, yang mencakup nol atau beberapa hal berikut ini.

Nilai

Makna

JET_bitTransactionReadOnly

Transaksi tidak akan mengubah database. Jika pembaruan dicoba, operasi tersebut akan gagal dengan JET_errTransReadOnly. Opsi ini diabaikan kecuali diminta ketika sesi yang diberikan belum dalam transaksi. Opsi ini hanya tersedia pada Windows XP.

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_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.

JET_errTransTooDeep

Transaksi baru tidak dapat dimulai karena sesi sudah pada kedalaman titik penyimpanan maksimum yang diizinkan oleh mesin database.

Jika berhasil, sesi yang disediakan akan berada di dalam transaksi. Jika sesi sebelumnya berada di dalam transaksi, maka titik penyimpanan baru akan dibuat.

Jika gagal, status transaksional sesi tidak akan berubah. Tidak ada perubahan pada status database yang akan terjadi.

Keterangan

Untuk informasi selengkapnya tentang cara kerja transaksi, lihat JetBeginTransaction.

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_GRBIT
JET_SESID
JetBeginTransaction
JetCommitTransaction
JetGetSystemParameter
JetResetSessionContext
JetRollback
JetSetSessionContext
Parameter Sistem