數(shù)據(jù)庫(kù)原理-期末考試試題及答案
數(shù)據(jù)庫(kù)原理-期末考試試題及答案
得 分
一、單項(xiàng)選擇題
(本大題共15小題,每小題2分,共30分)
在每小題列出的四個(gè)備選項(xiàng)中只有一個(gè)是符合題目要 求的,錯(cuò)選、多選或未選均無(wú)分。
1. 要保證數(shù)據(jù)庫(kù)的數(shù)據(jù)獨(dú)立性,需要修改的是( )
A.三層模式之間的兩種映射 B.模式與內(nèi)模式
C.模式與外模式 D.三層模式
2. 下列四項(xiàng)中說(shuō)法不正確的是( ?。?/p>
A.?dāng)?shù)據(jù)庫(kù)減少了數(shù)據(jù)冗余 B.?dāng)?shù)據(jù)庫(kù)中的數(shù)據(jù)可以共享
C.?dāng)?shù)據(jù)庫(kù)避免了一切數(shù)據(jù)的重復(fù) D.?dāng)?shù)據(jù)庫(kù)具有較高的數(shù)據(jù)獨(dú)立性
3. 公司中有多個(gè)部門(mén)和多名職員,每個(gè)職員只能屬于一個(gè)部門(mén),一個(gè)部門(mén)可以有多名職員,從職員到部門(mén)的聯(lián)系類型是( )
A.多對(duì)多 B.一對(duì)一
C.多對(duì)一 D.一對(duì)多
4. 將E-R模型轉(zhuǎn)換成關(guān)系模型,屬于數(shù)據(jù)庫(kù)的( )
A.需求分析 B.概念設(shè)計(jì)
C.邏輯設(shè)計(jì) D.物理設(shè)計(jì)
5. 五種基本關(guān)系代數(shù)運(yùn)算是( )
A.∪,—,×,π和σ B.∪,—,,π和σ
C.∪,∩,×,π和σ D.∪,∩,,π和σ
6. 下列聚合函數(shù)中不忽略空值 (NULL) 的是( )。
A.SUM (列名) B.MAX (列名)
C.COUNT ( * ) D.AVG (列名)
7. SQL中,下列涉及空值的操作,不正確的是( )。
A. AGE IS NULL B. AGE IS NOT NULL
C. AGE = NULL D. NOT (AGE IS NULL)
8. 已知成績(jī)關(guān)系如表1所示。
執(zhí)行SQL語(yǔ)句:
SELECT COUNT(DISTINCT學(xué)號(hào))
FROM成績(jī)
WHERE分?jǐn)?shù)>60
查詢結(jié)果中包含的元組數(shù)目是( )
表1 成績(jī)關(guān)系
學(xué)號(hào)
課程號(hào)
分?jǐn)?shù)
S1
C1
80
S1
C2
75
S2
C1
null
S2
C2
55
S3
C3
90
A. 1 B. 2
C. 3 D. 4
9. 在視圖上不能完成的操作是( )
A. 更新視圖 B. 查詢
C. 在視圖上定義新的基本表 D. 在視圖上定義新視圖
10. 關(guān)系數(shù)據(jù)模型的三個(gè)組成部分中,不包括( )
A. 完整性約束 B. 數(shù)據(jù)結(jié)構(gòu)
C. 恢復(fù) D. 數(shù)據(jù)操作
11. 假定學(xué)生關(guān)系是S(S#,SNAME,SEX,AGE),課程關(guān)系是C(C#,CNAME,TEACHER),學(xué)生選課關(guān)系是SC(S#,C#,GRADE)。
要查找選修“COMPUTER”課程的“女”學(xué)生姓名,將涉及到關(guān)系( )
A.S B.SC,C
C.S,SC D.S,SC,C
12. 關(guān)系規(guī)范化中的刪除操作異常是指( ?。?/p>
A.不該刪除的數(shù)據(jù)被刪除 B.不該插入的數(shù)據(jù)被插入
C.應(yīng)該刪除的數(shù)據(jù)未被刪除 D.應(yīng)該插入的數(shù)據(jù)未被插入
13. 從E-R模型關(guān)系向關(guān)系模型轉(zhuǎn)換時(shí),一個(gè)m:n聯(lián)系轉(zhuǎn)換為關(guān)系模式時(shí),該關(guān)系模式的碼是( )
A.M端實(shí)體的碼 B.N端實(shí)體的碼
C.M端實(shí)體碼與N端實(shí)體碼組合 D.重新選取其他屬性
14.已知關(guān)系R={A,B,C,D,E,F(xiàn)},F(xiàn)={A→C,BC→DE,D→E,CF→B}。則(AB)F+的閉包是( )
A.ABCDEF B.ABCDE
C.ABC D.AB
15.設(shè)有關(guān)系R(A,B,C)和S(C,D)。與SQL語(yǔ)句select A,B,D from R,S where R.C=S.C等價(jià)的關(guān)系代數(shù)表達(dá)式是( )
A.σR.C=S.C(πA,B,D(R×S))
B.πA,B,D(σR,C= S.C(R×S))
C.σR.C=S.C((πA,B (R))×(πD(S)))
D.σR,C=S.C(πD((πA,B(R))×S))
得 分
二、多項(xiàng)選擇題
(本大題共5小題,每小題2分,共10分)
在每小題列出的四個(gè)備選項(xiàng)中有多個(gè)是符合題目要求的,多選、少選、錯(cuò)選、不選均無(wú)分。
1. 對(duì)于關(guān)系模式S(Sno,Sname,Age,Dept);C(Cno,Cname,Teacher);SC(Sno,Cno,Score)。下列查詢結(jié)果相同的是( )
A.πSname((S)
σScore>60(SC))
B.πSname(σScore>60(S
SC))
C.σScore>60 (πSname (S
SC))
D.σScore>60 (πSname (S)
(SC))
2. 某查詢語(yǔ)句中有“%田_”語(yǔ)句,則可能的查詢結(jié)果有( ?。?/p>
A.張?zhí)?B.陳力田
C.田華 D.劉田耕
3. 對(duì)于下列語(yǔ)句TeacherNO INT NOT NULL UNIQUE,正確的描述是( )
A.TeacherNO是主碼
B.TeacherNO不能為空
C.TeacherNO的值可以是“王大力”
D.每一個(gè)TeacherNO必須是唯一的
4. 下面哪幾個(gè)依賴是平凡函數(shù)依賴( )
A.(Sno,Cname,Grade) →(Cname,Grade)
B.(Sno,Cname) →(Cname,Grade)
C.(Sno,Cname) →(Sname,Grade)
D.(Sno,Sname) →Sname
5. 下面關(guān)于數(shù)據(jù)庫(kù)模式設(shè)計(jì)的說(shuō)法中正確的有( )
A.在模式設(shè)計(jì)的時(shí)候,有時(shí)候?yàn)榱吮WC性能,不得不犧牲規(guī)范化的要求
B.有的情況下,把常用屬性和很少使用的屬性分成兩個(gè)關(guān)系,可以提高查詢的速度
C.連接運(yùn)算開(kāi)銷很大,在數(shù)據(jù)量相似的情況下,參與連接的關(guān)系越多開(kāi)銷越大
D.減小關(guān)系的大小可以將關(guān)系水平劃分,也可以垂直劃分
三、填空題
得 分
(本大題共20空,每空1分,共20分)
錯(cuò)填、不填均無(wú)分。
1. SQL語(yǔ)言集數(shù)據(jù) 、數(shù)據(jù) 、數(shù)據(jù) 、數(shù)據(jù)___________功能于一體。
2. E-R圖的主要元素是____________、____________、____________。
3. 關(guān)系系統(tǒng)的完整性控制包括____________、____________、____________。
4. 關(guān)系模式R的碼都為單屬性,則R一定是第 _ 范式。
5. 數(shù)據(jù)庫(kù)系統(tǒng)一般包括數(shù)據(jù)庫(kù)、___________、___________、___________與用戶。
6. 從關(guān)系規(guī)范化理論的角度講,一個(gè)只滿足1NF的關(guān)系可能存在的四方面問(wèn)題是:數(shù)據(jù)冗余度大、______________、修改異常和刪除異常。
7. 如果兩個(gè)實(shí)體之間具有m:n聯(lián)系,則將它們轉(zhuǎn)換為關(guān)系模型的結(jié)果是_________個(gè)表。
8. 數(shù)據(jù)庫(kù)設(shè)計(jì)的一般步驟有:需求分析、___________、____________、 _______________、________________、運(yùn)行與維護(hù)等。
得 分
得 分
四、設(shè)計(jì)題
(本大題共2小題,第1小題5分,第2小題15,
共 20分)
1. 設(shè)教學(xué)數(shù)據(jù)庫(kù)中有三個(gè)基本表:
學(xué)生表S(SNO,SNAME,AGE,SEX),其屬性分別表示學(xué)號(hào)、學(xué)生姓名、年齡、性別。課程表C(CNO,CNAME,TEACHER),其屬性分別表示課程號(hào)、課程名、上課教師名。選修表SC(SNO,CNO,GRADE),其屬性分別表示學(xué)號(hào)、課程號(hào)、成績(jī)。
有如下SQL查詢語(yǔ)句:
SELECT CNO
FROM C
WHERE CNO NOT IN
(SELECT CNO
FROM S,SC
WHERE S.SNO=SC.SNO
AND SNAME='張三');
請(qǐng)完成下列問(wèn)題:
(1)用漢語(yǔ)句子闡述上述SQL語(yǔ)句的含義;(2分)
(2)用等價(jià)的關(guān)系代數(shù)表達(dá)式表示上述SQL查詢語(yǔ)句。(3分)
2. 設(shè)有關(guān)系R和函數(shù)依賴F:
R(A,B,C,D,E),F(xiàn) = { ABC→DE,BC→D,D→E }。
試求下列問(wèn)題:
(1)關(guān)系R的侯選碼是什么?R屬于第幾范式?并說(shuō)明理由。(3分)
(2)如果關(guān)系R不屬于BCNF,請(qǐng)將關(guān)系R逐步分解為BCNF。(12分)
要求:寫(xiě)出達(dá)到每一級(jí)范式的分解過(guò)程,并指明消除什么類型的函數(shù)依賴。
得 分
五、綜合題(共20分)
現(xiàn)有如下E-R圖:
實(shí)體的主要屬性如下,其中下劃線部分為主碼:
倉(cāng)庫(kù)(倉(cāng)庫(kù)號(hào),倉(cāng)庫(kù)名,面積,貨位數(shù))
零件(零件號(hào),零件名稱,規(guī)格型號(hào),計(jì)量單位,供貨商號(hào),價(jià)格)
庫(kù)存(?,?,庫(kù)存量)
1. 請(qǐng)?jiān)?strong>?處填上相應(yīng)的屬性。(2分)
2. 試用SQL定義上述E-R圖中所有的實(shí)體、屬性及聯(lián)系,所對(duì)應(yīng)的英文名稱為:
Warehouse(wno,wname,square,cou)
Material(mno,mname,type,unit,cusnum,price)
Storage(?,?,storenumber),要求反映主碼和外碼,其中的類型長(zhǎng)度可以根據(jù)需要自行確定。(6分)
3. 用SQL與關(guān)系代數(shù)表示查詢:(6分)
找出零件名為“鏍絲”的零件號(hào)、所存放的倉(cāng)庫(kù)號(hào)、庫(kù)存量。
4. 建立一個(gè)包含倉(cāng)庫(kù)號(hào)、倉(cāng)庫(kù)名、零件號(hào)、零件名、價(jià)格、庫(kù)存量的視圖VIEW1。(6分)
參考答案與評(píng)分細(xì)則
一、單項(xiàng)選擇題(共15小題,每小題2分,共30分)
題號(hào)
1
2
3
4
5
6
7
8
9
10
答案
A
C
C
C
A
C
C
B
C
C
題號(hào)
11
12
13
14
15
答案
D
A
C
B
B
二、多項(xiàng)選擇題(共5小題,每小題2分,共10分)
題號(hào)
1
2
3
4
5
答案
AB
CD
BD
AD
ABCD
三、填空題(共20空,每空1分,共20分)。
1. 定義 、 查詢 、 操縱 、 控制
2. 實(shí)體型 、 屬性 、 聯(lián)系
3. 實(shí)體完整性 、 參照完整性 、 用戶定義的完整性
4. 二
5. 數(shù)據(jù)庫(kù)管理系統(tǒng) 、 應(yīng)用系統(tǒng) 、 數(shù)據(jù)庫(kù)管理員
6. 插入異常
7. 3
8. 概念結(jié)構(gòu)設(shè)計(jì) 、 邏輯結(jié)構(gòu)設(shè)計(jì) 、 物理結(jié)構(gòu)設(shè)計(jì) 、 數(shù)據(jù)庫(kù)的實(shí)施
四、設(shè)計(jì)題(共2小題,第1小題5分,第2小題15分,共20分)
1、參考答案:
(1)查詢張三同學(xué)沒(méi)有選修的課程的課程號(hào)。(2分)
(2)πCNO(C)- πCNO (sSNAME='張三' (S)
SC) 或
πCNO(C)- πCNO (sSNAME='張三' (S
SC)) (3分)
評(píng)分標(biāo)準(zhǔn):
(1)意思表達(dá)正確即可給分;(2)兩個(gè)關(guān)系的差1分,sSNAME='張三'1分, S
SC1分。
2、參考答案:
(1)關(guān)系R的候選碼是(A,B,C),R∈1NF,因?yàn)镽中存在非主屬性D,E對(duì)候選碼(A,B,C)的部分函數(shù)依賴。
(2)首先消除部分函數(shù)依賴
將關(guān)系分解為:
R1(A,B,C) (A,B,C)為候選碼,
R1中不存在非平凡的函數(shù)依賴
R2(B,C,D,E),(B,C)為候選碼,
R2的函數(shù)依賴集為:F2={(B,C)→D,D→E}
在關(guān)系R2中存在非主屬性E對(duì)候選碼(B,C)的傳遞函數(shù)依賴,所以將R2進(jìn)一步分解:
R21(B,C,D) ,(B,C)為候選碼,
R21的函數(shù)依賴集為:F21 = {(B,C)→D }
R22(D,E) ,D為候選碼,
R22的函數(shù)依賴集為:F22 = { D→E }
在R1中已不存在非平凡的函數(shù)依賴,在R21、R22關(guān)系模式中函數(shù)依賴的決定因素均為候選碼,所以上述三個(gè)關(guān)系模式均是BCNF。
評(píng)分標(biāo)準(zhǔn):
(1)正確指明候選碼為(A,B,C)(1分);正確指明R∈1NF(1分);正確說(shuō)明R∈1NF的理由(1分)。
(2)首先正確將R分解為R1(A,B,C)(3分)和R2(B,C,D,E)(3分),再將R2正確分解為R21(B,C,D)(3分)和R22(D,E)(3分),其中分解屬性正確1分,候選碼指定正確1分,函數(shù)依賴集書(shū)寫(xiě)正確1分。分解過(guò)程的敘述斟情扣分。
五、綜合題(共20分)
1、 倉(cāng)庫(kù)號(hào)(1分) 零件號(hào)(1分)
2、 建立倉(cāng)庫(kù)表
Create table warehouse
(
wno varchar(10) primary key,
wname varchar(20),
square number(10,2),
cou int)
建立零件表
Create table material
(
mno varchar2(10) primary key,
mname varchar2(20),
type varchar2(10),
unit varchar2(10),
cusnum varchar2(10),
price number(10,2))
建立庫(kù)存表
Create table storage
(
wno varchar2(10) foreign key references warehouse(wno),
mno varchar2(10) foreign key references material(mno),
storenumber number(10,2),
primary key(wno,mno))
評(píng)分標(biāo)準(zhǔn):
3個(gè)primary key各1分,2個(gè)foreign key各1分,其它1分,根據(jù)實(shí)際情況斟情扣分。
3、 用SQL表示:
select material.mno,wno,storenumber (1分,mno前無(wú)前綴不給分)
from material,storage (1分,2個(gè)表任少一個(gè)不給分)
where material.mno=storage.mno and mname=’螺絲’(1分,條件少一個(gè)不給分)
用關(guān)系代數(shù)表示:
πmno,wno,storenumber(smname='螺絲' (material)
storage)
1分 1分 1分
4、
Create view VIEW1(1分,少關(guān)鍵字或錯(cuò)寫(xiě)不給分)
As
select warehouse.wno, wname, material.mno, mname, price, storenumber
(1分,wno前無(wú)前綴不給分,少屬性不給分)
from warehouse, material, storage
(2分,少1個(gè)表扣1分,少2個(gè)表不給分)
where warehouse.wno=storage.wno and material.mno=storage.mno
(2分,1個(gè)條件1分)