ORACLE/VIEW編

オラクルちょこっとリファレンス

HOME > VIEW編

VIEW(ビュー)

ビューとはある表の特定のカラムや指定した条件に合致するレコードなどを取り出した仮想の表です。また、複数の表を結合したビューを作成することもできます。

ビューを作成することによりユーザに必要最小限のカラムやレコードのみにアクセスさせる事ができたり、結合条件を指定しなくても既に結合された表にアクセスできるなどのメリットがあります。

ビューの作成

ビューの作成には、CREATE VIEW句を使用します。

CREATE VIEW構文
CREATE [OR REPLACE] [FORCE|NOFORCE] VIEW <ビュー名>
  AS <SELECT文> [WITH READ ONLY] [WITH CHECK OPTION];
パラメータ 説明
OR REPLACE 同名のビューが既に存在した時でも、構わず上書きする場合に指定する
FORCE|NOFORCE FORCE:エラーがあっても強制的にVIEWを作成する
NOFORCE:エラーがあった場合はVIEWを作成しない
WITH READ ONLY 読み取り専用のVIEWを作成する
WITH CHECK OPTION VIEWにより問い合わされた行に対してのみ、ビューを通して挿入や更新を可能とする場合に指定する
CREATE VIEW例文
CREATE VIEW test_view AS SELECT B.PREF_NAME, A.JYUSHO, A.TEL, FROM ADDRESS A, PREF_MST B WHERE A.PREF_CD = B.PREF_CD WITH READ ONLY;

CREATE VIEWの実行には以下の権限が必要です。

  • 自スキーマに作成する場合:「CREATE VIEW」システム権限
  • 他スキーマに作成する場合:「CREATE ANY VIEW」システム権限

ビューの更新

ビューを更新するには、CREATE OR REPLACE VIEW句を使用します。
詳細は上記の「ビューの作成」をご覧ください。

ビューのソースを表示

ビューのソースを表示するには USER_VIEWSデータディクショナリを検索します。
(DBA_VIEWS、ALL_VIEWSでもOKです。)

ビューソース表示構文
SELECT TEXT FROM USER_VIEWS
WHERE VIEW_NAME = 'ビュー名';

ビュー名は必ず、大文字で指定してください。

VIEWのソースを表示する例文
--ビュー(ビュー名:test_view)のソースを表示する。 SELECT TEXT FROM USER_VIEWS WHERE VIEW_NAME = 'TEST_VIEW';

ビューの削除

ビューの削除には、DROP VIEW句を使用します。

DROP VIEW構文
DROP VIEW <ビュー名>;

DROP VIEW例文
--ビュー(ビュー名:test_view)を削除する。 DROP VIEW test_view;

ToTop