テーブルPerson
とそれにアクセスするいくつかのアプリケーションを含む SQL データベースがあるとします。Person
何らかの理由で、下位互換性のない方法でテーブルを変更したいと考えています。
互換性を維持するための考えられる解決策の 1 つは、テーブルの名前を に変更し、従来のテーブルと同じインターフェイスを提供するビューUser
を作成することです。Person
(必要に応じてon insert、on update、およびon deleteトリガーを追加します)。
このアプローチには、いくつかの変更を加えると、意味的に正しい名前が利用できなくなる可能性があるという問題があります。
DBバージョンに応じてスキーマ「インターフェース」を「ネームスペース」するためのよく知られたベストプラクティスはありますか?
または、下位互換性を維持するためのより良い方法はありますか?