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

CREATE VIEW

ドキュメント内 Oracle9i Lite SQLリファレンス, リリース5.0 (ページ 166-169)

構文構文 構文構文 図 図 図

4-29 CREATE VIEWコマンドコマンドコマンドコマンド

用途 用途 用途 用途

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

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

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

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

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

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

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

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

表 表 表

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

引数 引数

引数 説明説明説明説明

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

るオブジェクト権限を変更(削除、再作成または再付与)せずに、

既存のビューの定義を変更するために使用します。

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

ビューを含むスキーマの所有者がその実表や参照オブジェクト型に 対する権限を持っているかにかかわらずビューを作成する場合は、

FORCEを指定します。 これらの条件が満たされていないと、ビュー に対しSELECT、INSERT、UPDATEまたはDELETE文は発行でき ません。

ALTER USER

SQLコマンド 4-53 使用上の注意

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

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

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

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

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

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

ルが必要です。

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

つのケースがあります。

1. CREATE FORCE VIEWを使用して実表なしで作成されたビューにコマンドを発行する

場合、最初にALTER VIEW view_name COMPILEコマンドを発行する必要があります。

発行されていないとエラー・メッセージが発生します。

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

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

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

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

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

view ビューの名前。

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

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

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

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

引数引数

引数引数 説明説明説明説明

ALTER USER

例 例 例 例

次の例は、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

ALTER USER

SQLコマンド 4-55

ドキュメント内 Oracle9i Lite SQLリファレンス, リリース5.0 (ページ 166-169)