CREATE VIEW view AS SELECT query
ビューの作成に成功した場合に返されるメッセージ。
指定したビューが既にデータベース内に存在していた場合 に現れるメッセージ。
型の指定が無い場合、型が不明な列が存在するビューが作成され ます。 例えば、
CREATE VIEW vista AS SELECT 'Hello World'というコマンドはこの警告を発生しますが、
CREATE VIEW vista AS SELECT text 'Hello World'というコマンドはこの警告を発生しません。
CREATE VIEW はテーブルもしくはクラス のビューを定義します。 このビューは物理的な実体として存在するものではありません。 ビューに対する抽出操作をサポートするような、問い合わせを 書き換える特殊な抽出ルールが自動的に生成されます。
全ての娯楽映画 (Comedy films) からなるビューを作成します。
CREATE VIEW kinds AS SELECT * FROM films WHERE kind = 'Comedy'; SELECT * FROM kinds; code | title | did | date_prod | kind | len -------+---------------------------+-----+------------+--------+------- UA502 | Bananas | 105 | 1971-07-13 | Comedy | 01:22 C_701 | There's a Girl in my Soup | 107 | 1970-06-11 | Comedy | 01:36 (2 rows)
SQL92 では CREATE VIEW 文に 対し、いくつかの追加機能を規定しています。
CREATE VIEW view [ column [, ...] ] AS SELECT expression [ AS colname ] [, ...] FROM table [ WHERE condition ] [ WITH [ CASCADE | LOCAL ] CHECK OPTION ]
完全な SQL92 コマンドのオプション句は以下の通りです:
更新可能なビューに関連するオプションです。 ビューに対する INSERT と UPDATE は全て、データが確実に ビューの定義条件をみたすかどうか検査されます。 条件をみたしていなければ、その更新は拒否されます。
このビューの整合性を検査します。
自身、及び、他の依存するビューに対する整合性を検査します。 CASCADE も LOCAl も指定されていない場合、CASCADE が指定さ れたものと仮定されます。