Oracle の分離レベルをクエリする方法

WBOY
リリース: 2022-06-13 10:58:33
オリジナル
7357 人が閲覧しました

Oracle で分離レベルをクエリする方法: 1. "declare trans_id... begin trans_id :=...;end;" ステートメントを使用して、現在のセッションをトランザクションに入れます。 2. " を使用します。 SELECT s. sid, s.serial#,CASE...WHEN 0 THEN '....'ELSE '...' END AS..." ステートメントを使用して分離レベルをクエリします。

Oracle の分離レベルをクエリする方法

このチュートリアルの動作環境: Windows 10 システム、Oracle バージョン 12c、Dell G3 コンピューター。

Oracle 分離​​レベルをクエリする方法

Oracle トランザクション分離レベルを表示する方法

Oracle はさらに面倒です。次のステートメントを実行してください

1): 現在のセッションがトランザクション内であることを確認します#

declare
trans_id Varchar2(100);
begin
trans_id := dbms_transaction.local_transaction_id( TRUE );
end;
ログイン後にコピー

2): 分離レベルをクエリします#

SELECT s.sid, s.serial#,CASE BITAND(t.flag, POWER(2, 28))
WHEN 0 THEN 'READ COMMITTED'
ELSE 'SERIALIZABLE' END AS isolation_level
FROM v$transaction t
JOIN v$session s ON t.addr = s.taddr AND s.sid = sys_context('USERENV', 'SID');
ログイン後にコピー

Oracle の分離レベルをクエリする方法Notes:

1): v$transaction が存在しない場合は、まずユーザーの権限が十分であるかどうかを検討します;

2): 2 番目の文の実行時に空のエラーが報告された場合は、これは、トランザクションがまだ作成されていないためです (したがって、最初に 2 番目の文を実行します) 1 つの文が 2 番目の文を実行しています);

推奨チュートリアル: "

Oracle Video Tutorial

"

以上がOracle の分離レベルをクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート