oracleの一時テーブルを作成する方法は?
Oracleの一時テーブルを作成するには、次の構文を使用します。
表名というグローバル一時テーブルを作成します。列名1はデータ型1で、列名2はデータ型2です。COMMIT時に行を削除するか保持するかを選択できます。
表名は仮テーブルの名前であり、列名とデータ型はテーブルの列とそれに対応するデータ型です。
ON COMMIT句は、トランザクションのコミット時に一時テーブルのデータをどのように扱うかを指定するために使用されます。DELETE ROWSオプションは、トランザクションのコミット後に一時テーブル内のすべてのデータを削除することを意味し、一方、PRESERVE ROWSオプションは、トランザクションのコミット後に一時テーブル内のデータを保持することを意味します。
一時表の構造定義はセッション終了後に自動的に削除されますが、データを保持している場合(PRESERVE ROWSオプションを使用)は、データはセッション終了後まで保持されますが、テーブルの構造は削除されます。
Oracleの一時テーブルを作成する例を示します:
一時的なグローバルテーブルtemp_tableを作成し、
(
id NUMBER,
name VARCHAR2(50)
)
COMMIT時に行を削除します。
この例では、idとnameの2つの列を持ち、データ型がそれぞれNUMBERとVARCHAR2であるtemp_tableという名前の一時テーブルが作成されます。この一時テーブルのデータはトランザクションがコミットされると削除されます。