• 検索結果がありません。

CREATE VIEW

ドキュメント内 Oracle9i Lite SQLリファレンス, リリース5.0.1 (ページ 178-181)

6. AND 7. OR

4.3 SQL コマンドのアルファベット順のリスト コマンドのアルファベット順のリスト コマンドのアルファベット順のリスト コマンドのアルファベット順のリスト

4.3.21 CREATE VIEW

構文 構文構文 構文 図図図

図 4-31 CREATE VIEWコマンドコマンドコマンドコマンド

BNF表記法表記法表記法表記法

CREATE [OR REPLACE] [[NO] FORCE] VIEW [schema .] view ["("alias [, alias]...")"] AS subquery ;

用途用途用途 用途

ビューを作成または置換します。

前提条件 前提条件前提条件 前提条件

データベースにはSYSTEM、またはDBA/DDL権限を持つユーザーとしてログインする必 要があります。

FORCEでは、ビューの実表または参照オブジェクト型が存在するかどうか、あるいは

ビューを含むスキーマの所有者がその実表や参照オブジェクト型に対する権限を持っている かどうかにかかわらず、ビューが作成されます。これらの条件が満たされていないと、

ビューに対しSELECT、INSERT、UPDATEまたはDELETE文は発行できません。

NO FORCEでは、実表が存在し、ビューを含むスキーマの所有者が実表に対する権限を

持っている場合にのみ、ビューを作成します。これがデフォルトです。

表 表表

表 4-21 CREATE VIEWコマンドで使用される引数コマンドで使用される引数コマンドで使用される引数コマンドで使用される引数 引数

引数引数

引数 説明説明説明説明

OR REPLACE ビューがすでに存在する場合、再作成します。すでに付与されて

いるオブジェクト権限を変更(削除、再作成または再付与)せず に、既存のビューの定義を変更するために使用します。

SQLコマンドのアルファベット順のリスト

使用上の注意 使用上の注意使用上の注意 使用上の注意

次の場合、ビューは更新可能です。

subqueryは、単一の実表からまたは別の更新可能なビューから選択します。

選択された式のそれぞれが、その実表または更新可能なビューの列への参照となりま す。

選択リスト内の2つ以上の列参照が同じ列を参照することはありません。

CREATE ANY VIEWを使用して別のスキーマにビューを作成できますが、DBA/DDLロー

ルが必要です。

CREATE VIEWのFORCEオプションは、Oracle Liteでは動作が異なります。これには、2

FORCE ビューの実表または参照オブジェクト型が存在するか、あるいは

ビューを含むスキーマの所有者がその実表や参照オブジェクト型 に対する権限を持っているかにかかわらずビューを作成する場合 は、FORCEを指定します。これらの条件が満たされていないと、

ビューに対しSELECT、INSERT、UPDATEまたはDELETE文は 発行できません。

NO FORCE 実表が存在し、ビューを含むスキーマの所有者が実表に対する権

限を持っているときにのみビューを作成する場合は、NO FORCE を指定します。これがデフォルトのオプションです。

schema ビューを含むスキーマ。schemaを省略すると、Oracle Liteはユー

ザー自身のスキーマ内でビューを作成します。

view ビューの名前。

alias ビューの問合せに選択された式の名前を指定します。別名の数は、

ビューで選択された式の数と一致する必要があります。別名は、

スキーマ・オブジェクトに名前を付ける際のOracle Liteの規則に 従う必要があります。それぞれのaliasはビューの中で他と重複し ないようにする必要があります。

AS subquery ビューが基盤とする表の列および行を識別します。ビューの問合

せは、ORDER BYまたはFOR UPDATE句のないSELECT文はど れでも可能です。選択リストには、最大254個の式を入れられま す。

表表表

表 4-21 CREATE VIEWコマンドで使用される引数コマンドで使用される引数コマンドで使用される引数コマンドで使用される引数(続き)(続き)(続き)(続き)

引数 引数引数

引数 説明説明説明説明

SQLコマンドのアルファベット順のリスト

2. 有効な実表を使用して作成されたCREATE FORCE VIEWとCREATE VIEWでは、相違 点はありません。

例 例例 例

次の例は、EMP表内の各行の名前、仕事および給与を表示するEMP_SALという名前の ビューを作成します。

CREATE VIEW EMP_SAL (Name, Job, Salary) AS SELECT ENAME, JOB, SAL FROM EMP;

SELECT * FROM EMP_SAL;

次の結果を返します。

NAME JOB SALARY - ---KING PRESIDENT 5000 BLAKE MANAGER 2850 CLARK MANAGER 2450 JONES MANAGER 2975 MARTIN SALESMAN 1250 ALLEN SALESMAN 1600 TURNER SALESMAN 1500 JAMES CLERK 950 WARD SALESMAN 1250 FORD ANALYST 3000 SMITH CLERK 800 SCOTT ANALYST 3000 ADAMS CLERK 1100 MILLER CLERK 1300 14 rows selected.

ODBC 2.0

CREATE VIEWのODBC SQL構文はOR REPLACE引数をサポートしませんが、ODBCは

このコマンドをそのままデータベースに渡します。

ビューでのデータ編集 ビューでのデータ編集ビューでのデータ編集 ビューでのデータ編集

ODBCベースのツールは、そのほとんどがビューの更新を許可する前に主キーを必要としま

す。Oracle Liteは、ビューの主キーを記録しないため、WHERE句を使用して1つまたは複

数のターゲット行を指定し、ビューの更新や削除を実行するSQLコマンドを発行する必要 があります。

関連項目 関連項目関連項目 関連項目

DROP SEQUENCE、CREATE TABLE、DROP VIEW

SQLコマンドのアルファベット順のリスト

ドキュメント内 Oracle9i Lite SQLリファレンス, リリース5.0.1 (ページ 178-181)