四、設(shè)計題(本大題共5小題,每小題4分,共20分)
36.某農(nóng)場有多名飼養(yǎng)員(Worker),每名飼養(yǎng)員可以飼養(yǎng)多只動物(Animal),每只動物都有一個動物編號,每只動物只由一名飼養(yǎng)員飼養(yǎng),其關(guān)系模式如下:
Worker(wID,wName,wSex,wAge,wPhone),分別表示(編號,姓名,性別,年齡,電話)
Animal(aID,wID,aType,aAge),分別表示(動物編號,飼養(yǎng)員編號,種類,年齡)
實現(xiàn)下列操作:
用關(guān)系代數(shù)語言查詢沒有飼養(yǎng)過牛的飼養(yǎng)員的姓名和年齡。
37.根據(jù)題36給出的關(guān)系模式,實現(xiàn)下列操作:
寫出創(chuàng)建飼養(yǎng)員表的SQL語句,其中wID定義為主碼。
38.根據(jù)題36給出的關(guān)系模式,實現(xiàn)下列操作:
用SQL語言查詢由姓吳的飼養(yǎng)員飼養(yǎng)的所有動物的個數(shù)。
39.根據(jù)題36給出的關(guān)系模式,實現(xiàn)下列操作:
用SQL語言查詢飼養(yǎng)過;蛘吣挲g大于40歲的飼養(yǎng)員的編號。
40.根據(jù)題36給出的關(guān)系模式,實現(xiàn)下列操作:
用SQL語言創(chuàng)建視圖VW:沒有飼養(yǎng)過牛的飼養(yǎng)員的姓名和年齡。
五、綜合題(本大題共2小題,每小題5分,共10分)
41.設(shè)有關(guān)系模式R(學(xué)號Sno,課程號Cno,成績G,任課教師TN,教師工作單位TD),基于R的函數(shù)依賴集F={(Sno,Cno) →G, Cno→TN, TN→TD}根據(jù)上述規(guī)定
(1)寫出模式R的關(guān)鍵碼。
(2)判斷R最高為第幾范式?為什么?
(3)若R不為3NF,試將R分解成等價的3NF模式。
42.某學(xué)生管理系統(tǒng),涉及如下信息:
學(xué)生:學(xué)號、姓名、性別、年齡;
課程:課程號、課程名、學(xué)分;
教師:教師號、姓名、職稱、專業(yè);
學(xué)會:學(xué)會名稱、成立時間、負(fù)責(zé)人姓名、會費。
假設(shè)每門課程可由多位教師講授,每位教師只講授一門課程;每個學(xué)生可加入多個學(xué)會,學(xué)生進(jìn)入學(xué)會有一個入會年份。學(xué)生可選修多門課程,每個學(xué)生選修的每門課程有一個成績。
(1)根據(jù)以上敘述,設(shè)計優(yōu)化的ER模型,要求標(biāo)注聯(lián)系類型(可省略實體的屬性)。
(2)將ER模型轉(zhuǎn)換成關(guān)系模型,要求標(biāo)注每個關(guān)系模型的主鍵和外鍵(如果存在)。