プラハチャレンジにて、受講生チームから次のような質問がありました。 データベース(RDB)のテーブル設計を変更したい テーブル設計を変更する作業中にアプリケーションからデータベースへのアクセスが発生すると困る メンテナンス期間を設けアプリケーションを一時的に停止することで、データベースへのアクセスを防ぐことはできる データベースを止めることなくテーブル設計を変更する方法はないか この質問に対して、Expand and Contract patternを紹介しました。 この記事では、Expand and Contract patternを用いてテーブル設計を移行する方法を例を交えて紹介します。 ことのおこり プラハチャレンジのデータベース設計の課題の1つに、次のようなものがあります。 「漫画・小説といった書籍を保存してそれらにコメントできるようなサービス」(以下、書籍サービスとします)のデー