ビューの変更
広告
作成済みのビューを変更する方法です。ALTER VIEW文を使います。書式は次の通りです。
ALTER VIEW view_name[(column_list)] AS select_statement;
基本的にCREATE VIEW文と同じ書式です。既に存在しているビューの名前に対して新しいビューを再定義すると考えて下さい。
なおCREATE VIEW文でOR REPLACE節を付けた次の書式を使った場合と同じです。
CREATE OR REPLACE VIEW view_name[(column_list)] AS select_statement;
OR REPLACEを付けると、指定したビュー名のビューが存在していなかった場合は新規にビューを作成しますが指定のビュー名のビューが既に存在していた場合は既存のビューを置き換えます。
では実際に試してみます。まずビューを一つ作成します。今回はOR REPLACEを付けて試します。
mysql> create or replace view fruit -> as select id, name from products where category = 'Fruit';
「fruit」と言う名前のビューは存在しませんので新規にビューが作成されます。では作成されたビューのデータを取得します。
次に作成したビューを変更します。次のように入力して下さい。
mysql> alter view fruit(fruitname) -> as select name from products where category = 'Fruit';
既に存在していた「fruit」ビューを変更しました。具体的には取得するカラムを1つにしカラム名として「fruitname」を指定しました。では「fruit」ビューからデータを改めて取得してみます。
「fruit」ビューが変更されていることが確認できます。
( Written by Tatsuo Ikura )