建立及管理視觀表
視觀表會以表格形式呈現查詢結果。在可以使用表格之處,大多數也可以使用視觀表。當您需要經常存取儲存在許多不同表格中的資訊時,視觀表就很實用。
另請參閱:
-
如需查詢的相關資訊,請參閱選取表格資料
-
Oracle Database Concepts,瞭解有關檢視的其他一般資訊
建立視觀表
若要建立檢視,請使用 SQL Developer 工具「建立檢視」或 DDL 敘述句「建立檢視」。
此主題顯示如何使用這兩種方式來建立以下視觀表:
-
SALESFORCE,包含銷售部門員工的姓名和薪資
-
EMP_LOCATIONS,包含所有員工的姓名和地點
此檢視用於建立 INSTEAD OF 觸發程式。
另請參閱:
-
Oracle SQL Developer User's Guide,瞭解有關使用 SQL Developer 建立檢視的詳細資訊
-
Oracle Database SQL Language Reference,瞭解有關 CREATE VIEW 敘述句的詳細資訊
教學課程:使用建立視觀表工具建立視觀表
本教學課程顯示如何使用「建立檢視」工具建立 SALESFORCE 檢視。
使用「建立檢視表」工具建立 SALESFORCE 檢視表的步驟:
-
在「連線」框架中,展開 hr_conn 。
-
在綱要物件類型的清單中,以滑鼠右鍵按一下檢視。
-
在選項清單中,按一下新建檢視。
將會開啟「建立視觀表」視窗,內含新視觀表的預設值。
-
若為「綱要」,請接受預設值 HR。
-
若為「名稱」,請輸入
SALESFORCE。 -
如果未顯示「SQL 查詢」窗格,請按一下 SQL 查詢頁籤。
-
在「SQL 查詢」窗格的「SQL 查詢」欄位中:
-
在
SELECT之後,請輸入:FIRST_NAME || ' ' || LAST_NAME "Name", SALARY*12 "Annual Salary" -
在
FROM之後,請輸入:EMPLOYEES WHERE DEPARTMENT_ID = 80
-
-
按一下檢查語法。
-
在「語法結果」底下,如果訊息不是
No errors found in SQL,請返回步驟 7 ,並更正查詢中的語法錯誤。 -
然後按一下確定。
已建立檢視 SALESFORCE。若要查看,請展開 「連接」框架中的 「視圖」。
若要查看建立此檢視的 CREATE VIEW 敘述句,請選取其名稱,然後按一下 SQL 頁籤。
另請參閱:Oracle SQL Developer User's Guide,瞭解有關使用 SQL Developer 建立檢視的詳細資訊
使用 CREATE VIEW 敘述句建立視觀表
此範例顯示如何使用 CREATE VIEW 陳述式建立 EMP_LOCATIONS 檢視,該檢視結合四個表格。
範例 4-3 中的 CREATE VIEW 敘述句會建立結合四個表格的 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.
另請參閱:Oracle Database SQL Language Reference,瞭解 CREATE VIEW 敘述句的相關資訊
變更檢視中的查詢
若要變更檢視中的查詢,請使用 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.
另請參閱:Oracle Database SQL Language Reference,瞭解 CREATE VIEW 與 OR REPLACE 子句的相關資訊
教學課程:使用重新命名工具變更檢視名稱
本自學課程將說明如何使用「重新命名」工具來變更 SALESFORCE 檢視的名稱。
若要變更檢視的名稱,請使用 SQL Developer 工具「重新命名」(RENAME) 或 RENAME 敘述句。相等的 DDL 敘述句為:
RENAME SALESFORCE to SALES_MARKETING;
使用「重新命名」工具變更 SALESFORCE 檢視的步驟:
-
在「連線」框架中,展開 hr_conn 。
-
在綱要物件類型的清單中,展開視觀表。
-
在檢視清單中,以滑鼠右鍵按一下 SALESFORCE 。
-
在選項清單中,選取重新命名。
-
在「重新命名」視窗的「新建檢視名稱」欄位中,輸入
SALES_MARKETING。 -
按一下套用。
-
在「確認」視窗中,按一下確定。
另請參閱:Oracle Database SQL Language Reference,瞭解 RENAME 敘述句的相關資訊
刪除視觀表
若要刪除檢視,請使用 SQL Developer Connections 框架和 DROP 工具或 DDL 陳述式 DROP VIEW。
下列教學課程顯示如何使用「連線」框架和「刪除」工具來刪除檢視 SALES_MARKETING (在教學課程:使用重新命名的工具變更檢視名稱中變更)。相等的 DDL 敘述句為:
DROP VIEW SALES_MARKETING;
使用「刪除」工具來刪除檢視 SALES_MARKETING 的步驟:
-
在「連線」框架中,展開 hr_conn 。
-
在綱要物件類型的清單中,展開視觀表。
-
在檢視清單中,以滑鼠右鍵按一下 SALES_MARKETING 。
-
在選項清單中,按一下刪除。
-
在「刪除」視窗中,按一下套用。
-
在「確認」視窗中,按一下確定。
另請參閱:Oracle Database SQL Language Reference,瞭解 DROP VIEW 敘述句的相關資訊