ページの先頭行へ戻る
Symfoware Server V10.0.0/V10.0.1 アプリケーション開発ガイド(埋込みSQL編)

3.5 一時表の使用方法

一時表には、アプリケーションのセション内で利用できる表と、トランザクション内で利用できる表があります。(一時表の定義時に、行削除指定によって設定できます。)

一時表を使用する業務が1つのトランザクションで構成されている場合は、トランザクション内で利用できる一時表を使用します。この場合、一時表に格納した行は、トランザクション終了時に削除されます。同時に、データベーススペースに割り付けた一時表の領域も解放されます。

また、業務が複数のトランザクションで構成されている場合は、セション内で利用できる一時表を使用します。この場合、データベーススペースに割り付けた一時表の領域はセション終了時まで保持されます。しかし、一時表を使用する処理が完了し、以降の処理で一時表を使用しない場合には、行削除指定で設定した一時表の利用範囲に関係なく、データベーススペースに割り付けた一時表の領域を解放することができます。一時表の解放は、RELEASE TABLE文を使用します。一時表を解放する場合は、トランザクションが終了している必要があります。

月末業務や年度末業務など、定常的に行われない業務で使用した一時表を、RELEASE TABLE文で領域を解放することによって、データベーススペースを効率よく利用できます。

アプリケーション中に、以下のSQL文を記述します。

EXEC SQL RELEASE GLOBAL TEMPORARY TABLE STOCKS.在庫一時表;

注意

RELEASE TABLE文は、動的SQL文では使用できません。