【Oracle】一時表(Temporary Table)の利用

2020年10月27日

Oracle8iから一時表の機能が追加されました
通常の表を中間表として使用しているプロジェクトはないですか?
一時表には次の様な優位性があります

一時表の特徴

  • REDOログが生成されない為、負荷が小さい
  • メモリ上に存在する為、高速に動作(メモリが不足すれば一時表領域を使用)
  • トランザクションもしくは、セッションの終了をもってデータを自動削除(← これはかなり助かります)
  • 他セッションから自セッションの一時表データにアクセスする事ができない(排他)(← 結構助かります)
  • 索引をつけることも可能

一時表の作成

トランザクション終了時にデータが削除される一時表

CREATE GLOBAL TEMPORARY TABLE 表名 ON COMMIT DELETE ROWS 表定義

セッション終了時にデータが削除される一時表

CREATE GLOBAL TEMPORARY TABLE 表名 ON COMMIT PRESERVE ROWS 表定義

複雑な画面表示や、帳票データ集計の中間表として役立てて下さい

サイトマップ

2020年10月27日Oracle,SQL,データベース

Posted by こっぷ