質問
EXCHANGE コマンドをどのように使用しますか?
回答
EXCHANGE コマンドは、主キーやその他の設定が更新された可能性のある一時テーブルに、現在のテーブルを切り替える必要がある場合に便利です。
これは RENAME コマンドとは異なり、アトミックに実行されます。
また、ソーステーブルをトリガーとして動作する materialized view があり、その再構築を避けたい場合にも便利です。
以下に、動作の仕組みとテスト方法を示す簡単な例を示します。
- サンプルデータベースを作成する
- サンプルテーブルを作成
- サンプル行を挿入する
- EXCHANGE対象の一時テーブルの例を作成する
- 一時テーブルにサンプルの行を挿入する
- テーブルを切り替えるには
EXCHANGEコマンドを実行します
- テーブルが入れ替わり、行も入れ替わっていることを確認する