ビューの作成および管理

ビューは、表として問合せ結果を表示します。ビューは、表が使用可能なほとんどの場所で使用できます。ビューは、異なる複数の表に格納されている情報へ頻繁にアクセスする必要がある場合に役立ちます。

関連情報:

ビューの作成

ビューを作成するには、SQL Developerツールのビューの作成またはDDL文のCREATE VIEWを使用します。

ここでは、これらの方法を使用して次のビューを作成する方法について説明します。

関連情報:

チュートリアル: ビューの作成ツールによるビューの作成

このチュートリアルでは、ビューの作成ツールを使用してSALESFORCEビューを作成する方法について説明します。

ビューの作成ツールを使用してSALESFORCEビューを作成するステップ:

  1. 「接続」フレームのhr_connを開きます。

  2. スキーマ・オブジェクト・タイプのリスト内で、「ビュー」を右クリックします

  3. 選択肢のリストで、「新規ビュー」をクリックします。

    ビューの作成ウィンドウが開き、新しいビューのデフォルト値が表示されます。

  4. 「スキーマ」で、デフォルト値のHRを受け入れます。

  5. 「名前」にSALESFORCEと入力します。

  6. 「SQL問合せ」ペインが表示されないの場合は、「SQL問合せ」タブをクリックします。

  7. 「SQL問合せ」ペインの「SQL問合せ」フィールドで、次の手順を実行します。

    • SELECTの後に次を入力します。

      FIRST_NAME || ' ' || LAST_NAME "Name", SALARY*12 "Annual Salary"
      
    • FROMの後に次を入力します。

      EMPLOYEES WHERE DEPARTMENT_ID = 80
      
  8. 「構文チェック」をクリックします。

  9. 構文の結果の下に、メッセージがNo errors found in SQLでない場合、ステップ7に戻り、問合せの構文エラーを修正します。

  10. 「OK」をクリックします。

    ビューSALESFORCEが作成されます。これを表示するには、「接続」フレームで「ビュー」を展開します。

    このビューを作成するためにCREATE VIEW文を表示するには、その名前を選択して、「SQL」タブをクリックします。

See Also: Oracle SQL Developer User’s Guide for more information about using SQL Developer to create views

CREATE VIEW文によるビューの作成

この例では、CREATE VIEW文を使用して、4つの表を結合するEMP_LOCATIONSビューを作成します。

例4-3のCREATE VIEW文は、4つのテーブルを結合するEMP_LOCATIONSビューを作成します。(結合の詳細は、「複数の表からのデータの選択」を参照してください。)

例4-3 CREATE VIEW文を使用したEMP_LOCATIONSビューの作成

CREATE VIEW EMP_LOCATIONS AS
SELECT e.EMPLOYEE_ID,
e.LAST_NAME || ', ' || e.FIRST_NAME NAME,
  d.DEPARTMENT_NAME DEPARTMENT,
  l.CITY CITY,
  c.COUNTRY_NAME COUNTRY
FROM EMPLOYEES e, DEPARTMENTS d, LOCATIONS l, COUNTRIES c
WHERE e.DEPARTMENT_ID = d.DEPARTMENT_ID AND
 d.LOCATION_ID = l.LOCATION_ID AND
 l.COUNTRY_ID = c.COUNTRY_ID
ORDER BY LAST_NAME;

結果:

View EMP_LOCATIONS created.

関連項目: CREATE VIEW文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。

ビューの問合せの変更

ビューの問合せを変更するには、DDL文CREATE VIEWをOR REPLACE句とともに使用します。

例4-4のCREATE OR REPLACE VIEW文によって、SALESFORCEビューの問合せが変更されます。

例4-4 SALESFORCEビューの問合せの変更

CREATE OR REPLACE VIEW SALESFORCE AS
SELECT FIRST_NAME || ' ' || LAST_NAME "Name",
  SALARY*12 "Annual Salary"
  FROM EMPLOYEES
WHERE DEPARTMENT_ID = 80 OR DEPARTMENT_ID = 20;

結果:

View SALESFORCE created.

関連項目: OR REPLACE句を使用するCREATE VIEWの詳細は、『Oracle Database SQL言語リファレンス』を参照してください。

チュートリアル: 名前の変更ツールを使用したビュー名の変更

このチュートリアルでは、「名前の変更」ツールを使用して、SALESFORCEビューの名前を変更する方法について説明します。

ビューの名前を変更するには、SQL DeveloperツールのRENAME文またはRENAME文を使用します。対応するDDL文は次のとおりです。

RENAME SALESFORCE to SALES_MARKETING;

「名前の変更」ツールを使用してSALESFORCEビューを変更するステップ:

  1. 「接続」フレームのhr_connを開きます。

  2. スキーマ・オブジェクト・タイプのリストから、「ビュー」を展開します。

  3. ビューのリストで、SALESFORCEを右クリックします.

  4. 選択肢のリストで、「名前変更」を選択します。

  5. 「名前変更」ウィンドウで、「新規ビュー名」フィールドにSALES_MARKETINGと入力します。

  6. 「適用」をクリックします。

  7. 「確認」ウィンドウで、「OK」をクリックします。

参照: RENAME文の詳細は、Oracle Database SQL言語リファレンスを参照してください。

ビューの削除

ビューを削除するには、SQL Developerの「接続」フレームと削除ツールまたはDDL文のDROP VIEWを使用します。

次のチュートリアルは、「接続」フレームと削除ツールを使用して、SALES_MARKETINGビュー(「チュートリアル: 名前変更ツールを使用したビュー名の変更」で変更された)を削除する方法を示します。対応するDDL文は次のとおりです。

DROP VIEW SALES_MARKETING;

削除ツールを使用してSALES_MARKETINGビューを削除するステップ:

  1. 「接続」フレーム内で、hr_connを展開します。

  2. スキーマ・オブジェクト・タイプのリストから、「ビュー」を展開します。

  3. ビューのリストから、SALES_MARKETINGを右クリックします。

  4. 選択肢のリストから、「削除」をクリックします。

  5. 削除ウィンドウで、「適用」をクリックします。

  6. 「確認」ウィンドウで、「OK」をクリックします。

関連項目: DROP VIEW文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。