DBMS_XAシステムパッケージは、パラメータ値を指定するために使用できる定数を定義しています。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供します。
XA_START関数とXA_END関数のflagフィールドで使用される定数
次の表は、XA_START関数とXA_END関数のflagフィールドで使用される定数を示しています。
名前 |
タイプ |
値 |
説明 |
|---|---|---|---|
| TMNOFLAGS | PLS_INTEGER | 00000000 | フラグ値が選択されていないことを示します。 |
| TMSUCCESS | PLS_INTEGER | UTL_RAW.CAST_TO_BINARY_INTEGER ('04000000') | 呼び出し元とトランザクション分岐を分離します。 |
| TMJOIN | PLS_INTEGER | UTL_RAW.CAST_TO_BINARY_INTEGER ('00200000') | 呼び出し元が現在のトランザクション分岐に参加しています。 |
| TMSUSPEND | PLS_INTEGER | UTL_RAW.CAST_TO_BINARY_INTEGER ('02000000') | 呼び出し元は一時停止されており、関連付けは終了していません。 |
| TMRESUME | PLS_INTEGER | UTL_RAW.CAST_TO_BINARY_INTEGER ('08000000') | 呼び出し元が一時停止されたトランザクション分岐との関連付けを復元しています。 |
DBMS_XAの可能な定数戻り値
次の表は、DBMS_XAの可能な定数戻り値を示しています。
名前 |
タイプ |
値 |
説明 |
|---|---|---|---|
| XA_RBBASE | PLS_INTEGER | 100 | ロールバックコードの下限範囲 |
| XA_RBROLLBACK | PLS_INTEGER | XA_RBBASE | 不明な原因によるロールバック |
| XA_RBCOMMFAIL | PLS_INTEGER | XA_RBBASE+1 | 通信障害によるロールバック |
| XA_RBDEADLOCK | PLS_INTEGER | XA_RBBASE+2 | デッドロックが検出されました |
| XA_RBINTEGRITY | PLS_INTEGER | XA_RBBASE+3 | リソース整合性違反が検出されました |
| XA_RBOTHER | PLS_INTEGER | XA_RBBASE+4 | リソースマネージャーRMがトランザクションをロールバックした理由が記載されていません |
| XA_RBPROTO | PLS_INTEGER | XA_RBBASE+5 | リソースマネージャーRMでプロトコルエラーが発生しました |
| XA_RBTIMEOUT | PLS_INTEGER | XA_RBBASE+6 | トランザクション分岐の処理時間が長すぎます |
| XA_RBTRANSIENT | PLS_INTEGER | XA_RBBASE+7 | トランザクション分岐を再試行できます |
| XA_RBEND | PLS_INTEGER | XA_RBTRANSIENT | ロールバックコードの上限(上限値を含む) |
| XA_NOMIGRATE | PLS_INTEGER | 9 | トランザクション分岐は完了している可能性があります |
| XA_HEURHAZ | PLS_INTEGER | 8 | トランザクション分岐は完了している可能性があります |
| XA_HEURCOM | PLS_INTEGER | 7 | トランザクション分岐はコミットされている可能性があります |
| XA_HEURRB | PLS_INTEGER | 6 | トランザクション分岐はロールバックされている可能性があります |
| XA_HEURMIX | PLS_INTEGER | 5 | 一部のトランザクション分岐はコミット済み、他の分岐はロールバック済み |
| XA_RETRY | PLS_INTEGER | 4 | 定期的な返却が無効で、補充発行される可能性あり |
| XA_RDONLY | PLS_INTEGER | 3 | トランザクションは読み取り専用で既にコミット済み |
| XA_OK | PLS_INTEGER | 0 | 通常実行 |
| XAER.Async | PLS_INTEGER | -2 | 非同期操作が解決されていない |
| XAER_RMERR | PLS_INTEGER | -3 | トランザクション分岐内でリソースマネージャーがエラーを報告 |
| XAER_NOTA | PLS_INTEGER | -4 | XIDが無効です |
| XAERINVAL | PLS_INTEGER | -5 | 指定されたパラメータが無効です |
| XAERPROTO | PLS_INTEGER | -6 | 従来の呼び出しの前後関係が不適切 |
| XAER_RMFAIL | PLS_INTEGER | -7 | リソースマネージャーが利用できません |
| XAER_DUPID | PLS_INTEGER | -8 | XIDが既に存在します |
| XAER_OUTSIDE | PLS_INTEGER | -9 | リソースマネージャーがグローバルトランザクション以外の作業を実行 |