次の方法で共有


JetBeginTransaction3 関数

適用対象: Windows | Windows Server

JetBeginTransaction3 関数を使用すると、セッションでトランザクションが入力され、新しいセーブ ポイントが作成されます。 この関数は 1 回のセッションで複数回呼び出し、追加のセーブ ポイントを作成できます。 これらのセーブ ポイントは、データベースのーン港を選択的に保持したり、破棄したりする目的で利用できます。

JetBeginTransaction3 関数は Windows 8 オペレーティング システムで導入されました。

JET_ERR JET_API JetBeginTransaction3(
  __in          JET_SESID sesid,
  __in          int64 trxid,
  __in          JET_GRBIT grbit
);

パラメーター

sesid

この呼び出しに使用するセッション。

trxid

トランザクションを識別するためにユーザーが指定する省略可能な識別子。

grbit

次の表に示す呼び出しオプション値をゼロ個または複数個指定するビットのグループ。

Value

意味

JET_bitTransactionReadOnly

トランザクションでデータベースが変更されることはありません。 更新しても失敗し、JET_errTransReadOnly 応答コードが表示されます。 指定のセッションがトランザクション内にまだないときに要求されない限り、このオプションは無視されます。 このオプションは、Windows XP 以降の Windows オペレーティング システムのバージョンで使用できます。

戻り値

この関数を使用すると、次の表にあるいずれかのリターン コードと共に JET_ERR データ型が返されます。 考えられる Extensible Storage Engine (ESE) エラーの詳細については、「記憶域エンジンの拡張可能なエラー」と「エラー処理パラメーター」を参照してください。

リターン コード

説明

JET_errSuccess

操作は正常に完了しました。

JET_errClientRequestToStopJetService

セッションに関連付けられているインスタンス上のアクティビティがすべて、JetStopService 関数の呼び出しの結果として停止したため、操作を完了できません。

JET_errInstanceUnavailable

セッションに関連付けられているインスタンスで致命的なエラーが発生し、データの整合性を守る目的ですべてのデータ アクセスを取り消す必要があるため、操作を完了できません。

このリターン コードは Windows XP 以降のバージョンの Windows から返されます。

JET_errNotInitialized

セッションに関連付けられているインスタンスがまだ初期化されていないため、操作を完了できません。

JET_errRestoreInProgress

セッションに関連付けられているインスタンスで復元操作が進行中のため、操作を完了できません。

JET_errSessionSharingViolation

同じセッションを複数のスレッドに同時に使用することはできません。 このエラーは Windows XP 以降のバージョンの Windows から返されます。

JET_errTermInProgress

セッションに関連付けられているインスタンスがシャットダウン中のため、操作を完了できません。

JET_errTransTooDeep

データベース エンジンで許容される最大セーブ ポイント深度にセッションが既にあるため、新しいトランザクションを開始できません。

成功すると、指定されたセッションがトランザクションに入ります。 セッションが以前にトランザクション内にあった場合は、新しいセーブ ポイントが作成されます。

失敗した場合、セッションのトランザクション状態は変更されません。 データベースの状態は変更されません。

解説

トランザクションのしくみの詳細については、JetBeginTransaction を参照してください。

必要条件

要件 Value

クライアント

Windows 8 が必要です。

サーバー

Windows Server 2012 が必要です。

ヘッダー

Esent.h で宣言されています。

Library

ESENT.lib を使用します。

[DLL]

ESENT.dll が必要です。

関連項目

JET_ERR
JET_GRBIT
JET_SESID
JetBeginTransaction
JetCommitTransaction
JetGetSystemParameter
JetResetSessionContext
JetRollback
JetSetSessionContext
System Parameters