Teradata 視圖

2018-01-12 15:09 更新

視圖是由查詢構(gòu)建的數(shù)據(jù)庫對象。 可以使用單個表或通過連接的多個表來構(gòu)建視圖。 它們的定義永久存儲在數(shù)據(jù)字典中,但它們不存儲數(shù)據(jù)的副本。 視圖的數(shù)據(jù)是動態(tài)構(gòu)建的。
視圖可以包含表的行的子集或表的列的子集。

創(chuàng)建視圖

視圖是使用CREATE VIEW語句創(chuàng)建的。

語法

以下是創(chuàng)建視圖的語法。

CREATE/REPLACE VIEW <viewname> 
AS  
<select query>; 

例子

考慮以下Employee表。

員工不名字生日
101MikeJames1/5/1980
104AlexStuart11/6/1984
102RobertWilliams3/5/1983
105RobertJames12/1/1984
103PeterPaul4/1/1983

以下示例在Employee表上創(chuàng)建視圖。

CREATE VIEW Employee_View 
AS 
SELECT 
EmployeeNo, 
FirstName, 
LastName, 
FROM  
Employee;

使用視圖

您可以使用常規(guī)SELECT語句從視圖檢索數(shù)據(jù)。

例子

以下示例從Employee_View中檢索記錄;

SELECT EmployeeNo, FirstName, LastName FROM Employee_View;

當(dāng)執(zhí)行上述查詢時,它將產(chǎn)生以下輸出。

*** Query completed. 5 rows found. 3 columns returned. 
*** Total elapsed time was 1 second.  
 EmployeeNo            FirstName                       LastName 
-----------  ------------------------------  --------------------------- 
    101                  Mike                           James 
    104                  Alex                           Stuart 
    102                  Robert                         Williams 
    105                  Robert                         James 
    103                  Peter                          Paul 

修改視圖

可以使用REPLACE VIEW語句修改現(xiàn)有視圖。

以下是修改視圖的語法。

REPLACE VIEW <viewname> 
AS  
<select query>;

例子

以下示例修改視圖Employee_View以添加其他列。

REPLACE VIEW Employee_View 
AS 
SELECT 
EmployeeNo, 
FirstName, 
BirthDate,
JoinedDate 
DepartmentNo 
FROM  
Employee; 

下降視圖

可以使用DROP VIEW語句刪除現(xiàn)有視圖。

例子

下面是DROP VIEW的語法。

DROP VIEW <viewname>; 

例子

下面是一個刪除視圖Employee_View的示例。

DROP VIEW Employee_View; 

視圖的優(yōu)點(diǎn)

  • 視圖通過限制表的行或列來提供額外的安全級別。

  • 用戶只能訪問視圖而不是基表。

  • 通過使用視圖預(yù)聯(lián)接多個表來簡化其使用。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號