REFRESH TABLE

REFRESH TABLE ステートメントは、マテリアライズ照会表のデータをリフレッシュします。 このステートメントはマテリアライズ照会表のすべての行を削除してから、 マテリアライズ照会表の定義で指定された選択ステートメント にある結果行を挿入します。

呼び出し

このステートメントは、アプリケーション・プログラムに組み込むことができ、また対話式に呼び出すこともできます。 これは、動的に準備できる実行可能ステートメントです。

権限

このステートメントの権限 ID が保持する特権には、少なくとも以下の 1 つ が含まれていなければなりません。

  • ステートメントで識別される表に対して、
    • 表に対するシステム権限 *OBJMGT
    • 表に対する DELETE 特権
    • 表に対する INSERT 特権
    • その表が入っているライブラリーに対する *EXECUTE システム権限
  • データベース管理者権限

SQL 特権に対応するシステム権限については、『表またはビューへの権限を検査する際の対応するシステム権限』を参照してください。

構文

構文図を読む構文図をスキップする
                  .-,--------------.   
                  V                |   
>>-REFRESH TABLE------table-name---+---------------------------><

説明

table-name
リフレッシュするマテリアライズ表を識別します。 table-name では、現行サーバーに存在するマテリアライズ照会表を指定する必要があります。 REFRESH TABLE はマテリアライズ照会表の定義にある 選択ステートメント を評価して、 表をリフレッシュします。

マテリアライズ照会表のリフレッシュの使用: マテリアライズ照会表は、REFRESH TABLE ステートメントの処理中に選択ステートメント を評価するためには使用されません。

リフレッシュ分離レベル: 選択ステートメント の評価に使用される分離レベルは、次のいずれかです。

  • 選択ステートメント分離レベル 文節に指定されている分離レベル、または
  • 分離レベル 文節が指定されていない場合、 CREATE TABLE または ALTER TABLE の発行時に記録されたマテリアライズ照会表の分離レベル。

行数: REFRESH TABLE ステートメントが正常に実行された後、 SQL 診断領域の ROW_COUNT ステートメント情報項目 (または SQLCA の SQLERRD(3)) には、 マテリアライズ照会表に挿入された行数が含まれます。

TRANSCOUNT マテリアライズ照会表のデータをリフレッシュします。

   REFRESH TABLE TRANSCOUNT