8-2 視界的產生
我們介紹幾種視界產生方法與運用。 我們僅取資料表某些記錄(水平排列),則稱為水平投影。如下圖所示,我們由 teachers資料表內,僅取 dep_ID = “11” 資訊管理系的老師。
我們用 SQL 命令建立該 view,並取名為 mis_teachers,如下:
執行成功後,可以發現在 course_db 上增加了 11_teachers 表,它的型態是 “檢視”(view),記憶體空間未知(unknow)。我們利用 SQL 命令觀察 11_teachers 表的內容如何,如下:
如果使用完,不再需要它時,可將它刪除 SQL 命令(刪除 11_teachers 表),如下:
我們擷取資料表某些欄位,如同垂直投影一般。如下圖,一般學生選課管理很少用到電話、電子郵件、地址、電話等資料。因此,我們只要投影有用到的地方即可,譬如姓名、學號、性別。
我們用 SQL 命令建立該 view,並取名為 smp_students,如下:
執行成功後,可以發現在 course_db 上增加了 smp_students 表,它的型態是 “檢視”(view)。我們利用 SQL 命令觀察 smp_students 表的內容如何,如下:
如果使用完,不再需要它時,可將它刪除 SQL 命令(刪除 11_teachers 表),如下:
我們可以經由巢狀、合併或混合等技巧,將查詢的結果建立一個視界,這種應用可能更加廣泛。譬如,教師開課大多是系所辦理,很少牽涉到其它系老師,處理老師開課時大多不需要電子郵件、地址等資料,因此,我們可以針對每一個系所,建立一個 view 來專門處理該系所開課使用的教師表格,也許可以減少不需要的資料負荷。譬如開啟一個 sim_mis_teachers 視界{teacher_ID, name, sex},專門給資管系使用。我們用 SQL 命令建立該 view,如下:
執行成功後,可以發現在 course_db 上增加了 smp_mis_teachers 表,它的型態是 “檢視”(view)。我們利用 SQL 命令觀察其內容如何,如下:
如果使用完,不再需要它時,可將它刪除 SQL 命令,如下:
|
翻轉工作室:粘添壽
資料庫系統概論(含邏輯設計)
翻轉電子書系列:
|