この記事では、Oracle に関する関連知識を提供します。主に、トランザクション レベルの一時テーブル、セッション レベルの一時テーブルなどの一時テーブルに関する関連問題を以下に紹介します。見てみましょう。皆様のお役に立てれば幸いです。
![Oracle 一時テーブルの詳細な例](https://img.php.cn/upload/article/000/000/067/62bc1fca579a7482.jpg)
# 推奨チュートリアル: 「
Oracle ビデオ チュートリアル #」
1. Oracle 一時テーブル
一時テーブルは特別な種類のテーブルです。特定の(または複数の)テーブルのデータを繰り返し操作する必要がある場合、データのバッチ用の一時テーブルを作成することで、操作が簡略化され、効率が向上する可能性があります。
基本構文:
create global temporary table 临时表名(colum,colum,.......)on commit delete rows;on commit preserve rows;
ログイン後にコピー
説明:
on commit delete rows; 説明 データ行は現在のトランザクションでのみ表示され、これはデフォルト値でもありますデータはトランザクションが送信された後のものです。行は消え、トランザクション レベルの一時テーブルが作成されます。 - on commit prepare rows; 説明 データ行は現在のセッションでのみ表示され、セッションレベルの一時テーブルが作成されます。
-
#2. デモの例
#2.1. トランザクションレベルの一時テーブル
#-- 创建事务级临时表 tmp_user 注:on commit delete rows 可省略create global temporary table tmp_user (
user_id varchar2(10),
user_name varchar2(20)) on commit delete rows;
ログイン後にコピー
![](https://img.php.cn/upload/article/000/000/067/70c6b2dd069c39bb3684c83ee437a35d-0.png)
#2.2. セッションレベルの一時テーブル
-- 创建会话级临时表 tmp_user1create global temporary table tmp_user1 (
user_id varchar2(10),
user_name varchar2(20))on commit preserve rows;
ログイン後にコピー
![](https://img.php.cn/upload/article/000/000/067/d335bc45bb2a22eb7f8d1d799e23fee5-2.png)
# 3 、一時テーブルの説明![](https://img.php.cn/upload/article/000/000/067/d335bc45bb2a22eb7f8d1d799e23fee5-3.png)
一時テーブル内のデータはセッションまたはトランザクションに基づいており、他のセッションからアクセスすることはできません。
一時テーブルは、トランザクション処理またはセッション専用にすることができます。トランザクション固有の一時テーブルの場合、データはトランザクション中に存在し、セッション固有の一時テーブルの場合、データはセッション中に存在します。どちらの場合も、セッションによって挿入されるデータはセッションに固有です。各セッションは、それ自体のデータを表示および変更することしかできません。したがって、一時テーブル内のデータが DML ロックを取得することはありません。-
-
推奨チュートリアル: 「
Oracle ビデオ チュートリアル 」
以上がOracle 一時テーブルの詳細な例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。