メインコンテンツへスキップ

質問

テーブル名を入れ替えるには、EXCHANGE コマンドをどのように使用しますか?

回答

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