數據庫期末考卷

目錄

 

模擬試卷一

模擬試卷二

模擬試卷三

模擬試卷四


 

模擬試卷一

一、判斷題
判斷下列模式分別屬於哪個範式(最高範式)並說明理由。
1. R({A,B,C},{(A,C)→B ,(A,B)→C,B→C})
2. R({S # ,SD,SL,SN},{S # →SD,S # →SN,S # →SL,SD→SL})

一、判斷題
1. 1NF。
由題目可知,關係的侯選碼爲(A, C)和(A, B)。B→C 表明存在對碼的部分
依賴,所以這隻能是 1NF。
2. 2NF。
由題目可知,關係的碼爲 S # 。這裏存在對碼的傳遞依賴。


三、簡答題
1. 在數據庫中爲什麼要有併發控制 ?
2. 試述數據庫中完整性的概念、類型及你所瞭解的系統完整性檢查方法。
3. 什麼是數據模型 ? 試述其組成部分。
4. 什麼是數據庫系統的三級模式結構 ? 這種體系結構的優點是什麼 ?

1.數據庫是一個共享資源,它允許多個用戶同時存取修改同一個數據。若系統對並行操作不加控制,就可能產生錯誤的結果,如存取和存儲不正確的數據,破壞數據庫一致性等。併發控制的目的,就是要以正確的方式調度併發操作,避免造成各種不一致性,使一個事務的執行不受另一個事務的干擾。


2.數據庫的完整性是指數據的正確性和相容性,爲了防止不合語義的數據進入數據庫。完整性的類型一般可以分爲六類:靜態列級約束、靜態元組約束、靜態關係約束、動態列級約束、動態元組約束、動態關係約束。系統完整性檢查方法有多種,例如,在一條語句執行完後立即檢查是否違背完整性約束,即立即執行完整性檢查。有時完整性檢查延遲到整個事務執行結束後再進行,檢查正確方可提交,即延遲執行約束完整性檢查。


3.數據模型是數據庫中用來對現實世界進行抽象的工具,是數據庫中用於提供信息表示和操作手段的形式構架。不同的數據模型是提供給我們模型化數據和信息的不同工具。根據模型應用的不同目的,可以將模型分成兩類或兩個層次:一是概念模型,是按用戶的觀點來對數據和信息建模,用於信息世界的建模,強調語義表達能力,概念簡單清晰;另一是數據模型,是按計算機系統的觀點對數據建模,用於機器世界,人們可以用它定義、操縱數據庫中的數據。一般需要有嚴格的形式化定義和一組嚴格定義了語法和語義的語言,並有一些規定和限制,便於在機器上實現。一般地講,數據模型是嚴格定義的概念的集合。這些概念精確地描述系統的靜態特性、動態特性和完整性約束條件。因此數據模型通常由數據結構、數據操作和完整性約束三部分組成。
(1) 數據結構是所研究的對象類型的集合,是對系統的靜態特性的描述。
(2) 數據操作是指對數據庫中各種對象(型)的實例(值)允許進行的操作的集合,包括操作及有關的操作規則,是對系統動態特性的描述。
(3) 數據的約束條件是完整性規則的集合,完整性規則是給定的數據模型中數據及其聯繫所具有的制約和依存規則,用以限定符合數據模型的數據庫狀態以及狀態的變化,以保證數據的正確、有效、相容。

 

4.數據庫系統的三級模式結構由外模式、模式和內模式組成。 -外模式,亦稱子模式或用戶模式,是數據庫用戶看到的數據視圖。模式,亦稱邏輯模式,是數據庫中全體數據的邏輯結構和特性的描述,是所有用戶的公共數據視圖。 -內模式,亦稱存儲模式,是數據在數據庫系統內部的表示,即對數據的物理結構和存儲方式的描述。模式描述的是數據的全局邏輯結構。外模式涉及的是數據的局部的邏輯結構,通常是模式的子集。這種體系結構的優點:數據庫系統的三級模式是對數據的三個抽象級別,它把數據的具體組織留給 DB MS 管理,使用戶能邏輯抽象地處理數據,而不必關心數據在計算機中的表示和存儲。而爲了能夠在內部實現這 3 個抽象層次的聯繫和轉換,數據庫系統在這三級模式之間提供了兩層映像:外模式/ 模式映像和模式/ 內模式映像。正是這兩層映像保證了數據庫系統中的數據能夠具有較高的邏輯獨立性和物理獨立性。
 

四、求解題
某醫院病房計算機管理中需要如下信息:
科室:科名,科地址,科電話,醫生姓名
病房:病房號,牀位號,所屬科室名
醫生:姓名,職稱,所屬科室名,年齡,工作證號
病人:病歷號,姓名,性別,診斷,主管醫生,病房號
其中,一個科室有多個病房,多個醫生,一個病房只能屬於一個科室,一個醫
生只屬於一個科室,但可負責多個病人的診治,一個病人的主管醫生只有一個。
完成如下設計:
(1) 涉及該計算機管理系統的 E - R 圖;
(2) 將該 E - R 圖轉換爲關係模型的結構;
(3) 指出轉換結果中每個關係模式的候選碼。


五、求解題
設有關係模式 R(C,T,S,N,G),其中 C 代表課程,T 代表教師的職工號,S 代表學生號,N 代表學生的姓名, G 代表分數(成績)。其函數依賴集 F = {C→T,CS→G,S→N},即每一門課由一名教師講授,每個學生每門課只有一個成績,學生的學號決定學生的姓名。試求:
1. 該關係模式的候選碼(應根據候選碼的定義,並給出所求的過程);
2. 將該模式分解成既符合 BCNF,又具有無損連接的若干關係模式(要求給
出過程);
3. 將 R 分解成 R 1 (C,T,S,G)和 R 2 (C,S,N,G)試說明它們各符合第幾範式。

模擬試卷二


一、選擇題
1. 五種基本關係代數運算是【】
A. ∪, - ,×,π和σ
B. ∪, - ,∞,π和σ
C. ∪,∩,×,π和σ
D. ∪,∩,∞,π和σ
2. 下列聚集函數中不忽略空值 (null) 的是【】
A. SU M (列名)
B. M AX (列名)
C. COUNT ( * )
D. A VG (列名)
3. 設關係模式 R ( A, B, C), F 是 R 上成立的 FD 集, F = { B→ C},則分解ρ = { AB, BC}
A. 是無損聯接,也是保持 FD 的分解
B. 是無損聯接,但不保持 FD 的分解
C. 不是無損聯接,但保持 FD 的分解
D. 既不是無損聯接,也不保持 FD 的分解
4. 在數據庫設計中,將 E-R 圖轉換成關係數據模型的過程屬於【】
A. 需求分析階段
B. 概念設計階段
C. 邏輯設計階段
D. 物理設計階段
5. DB MS 中實現事務持久性的子系統是【】
A. 安全性管理子系統
B. 完整性管理子系統
C. 併發控制子系統
D. 恢復管理子系統
6. 當關系 R 和 S 自然聯接時,能夠把 R 和 S 原該捨棄的元組放到結果關係中的操作是【】
A. 左外聯接
B. 右外聯接
C. 外部並
D. 外聯接
二、名詞解釋
1. 關係模型中的實體完整性、參照完整性

(1) 實體完整性規則:若屬性 A 是基本關係 R 的主屬性,則屬性 A 不能取
空值。
(2) 參照完整性規則:若屬性(或屬性組) F 是基本關係 R 的外碼,它與基本關係 S 的主碼 K s 相對應(基本關係 R 和 S 不一定是不同的關係),則對於 R 中每個元組在 F 上的值必須爲:
1) 或者取空值( F 的每個屬性值均爲空值);
2) 或者等於 S 中某個元組的主碼值。


四、求解題
在供應商、零件數據庫中有以下 3 個關係模式:
供應商:S(SNO,SNA M E,CITY,STATUS)
零件:P(PNO,PNA M E, W EIGHT,COLOR,CITY)
供應貨:SP(SNO,PNO,QTY)
各屬性的含義可由屬性名體現,不再重複,供應貨關係 SP 表示某供應商
SNO,供應了 PNO 零件,數量爲 QTY。
用 SQL 語言完成以下操作:
1. 求供應紅色零件的供應商名字;
2. 求北京供應商的號碼、名字和狀況(STATUS);
3. 求零件 P2 的總供應量;
4. 把零件 P2 的重量增加 5,顏色該爲黃色。

1.
SELECT SNAME
FROM S
WHERE SNO IN
(SELECT SNO
FROM P,SP
WHERE P.COLOR = 紅色 AND P.PNO = SP.PNO);

2.
SELECT SNO,SNAME,STATUS
FROM S
WHERE S.CITY = 北京

3.
SELECT SUM(QTY)
FROM SP
WHERE PNO = P2

4.
UPDATE P
SET WEIGHT = WEIGHT + 5,COLOR = 黃色
WHERE PNO = P2


五、問答題
已知關係模式 R < U,F > , U = {A, B, C,D, E, G} F = { AC→B, CB→D, A→BE,E→GC}
求:AB,BC,AC 是否爲關係 R 的候選碼 ?


七、綜合題
現有如下關係模式:
其中, Teacher( Tno, Tname, Tel, Dpartment, Bno, Bname, BorrowDate, RDate,Backup)。
Tno—教師編號,
Tname—教師姓名,
Tel—電話,
Department—所在部門,
Bno—借閱圖書編號,
Bname—書名,
BorrowDate—借書日期,
R Date—還書日期,
Backup—備註
該關係模式的屬性之間具有通常的語義,例如,教師編號函數決定教師姓
名,即教師編號是惟一的,圖書編號是惟一的,等等。
1. 教師編號是候選碼嗎 ?
2. 說明上一題判斷的理由是什麼。
3. 寫出該關係模式的主碼。
4. 該關係模式中是否存在部分函數依賴 ? 如果存在,請寫出其中兩個。
5. 說明要將一個 1NF 的關係模式轉化爲若干個 2NF 關係,需要如何做 ?
6. 該關係模式最高滿足第幾範式 ? 並說明理由。
7. 將該關係模式分解爲 3NF。


八、綜合題
假設某商業集團數據庫中有一關係模式 R 如下:
R (商店編號,商品編號,商品庫存數量,部門編號,負責人)
如果規定:
(1) 每個商店的每種商品只在該商店的一個部門銷售;
(2) 每個商店的每個部門只有一個負責人;
(3) 每個商店的每種商品只有一個庫存數量。
試回答下列問題
(1) 根據上述規定,寫出關係模式 R 的基本函數依賴;
(2) 找出關係模式 R 的候選碼;
(3) 試問關係模式 R 最高已經達到第幾範式 ? 爲什麼 ?
(4) 如果 R 不屬於 3NF,請將 R 分解成 3NF 模式集。

 

 

模擬試卷三



三、求解題
某學校有若干系,每個繫有若干學生,若干課程,每個學生選修若干課程,每
門課有若干學生選修,某一門課可以爲不同的系開設,今要建立該校學生選修課
程的數據庫。請你設計:
1. 關於此學校數據庫的 E-R 圖;
2. 並把該 E-R 圖轉換爲關係模型。



五、問答題
供應商 - 零件 - 工程項目數據庫由以下四個關係模式構成:
S(SNO, SN A ME,STATUS,CITY)
P(PNO, PN A ME,COLOR, W EIGHT,CITY)
J(JNO, JN A ME, CITY)
SPJ(SNO, PNO, JNO, QTY)
供應商 S,零件 P 和工程項目J 分別由供應商號(SNO),零件號(PNO)和工程項目號(JNO)惟一標識。供貨 SPJ 是指由某個供應商向某個工程項目供應某些數量的某種零件。
請用 SQL 語言完成如下的操作:
1. 找出給北京的工程項目提供不同的零件號;
2. 將沒有供貨的所有工程項目從 J 中刪除;
3. 查詢提供全部零件的供應商名;
4. 查詢這樣的工程項目號:供給該工程項目的零件 P1 的平均供應量大於供給工程項目 J1 的任何一種零件的最大供應量;
5. 定義一個視圖,它由所有這樣的工程項目(工程項目號與所在城市名稱)組成:它們由供應商 S1 供貨且使用零件 P1。

1.
SELECT DISTINCT SPJ.PNO
FORM SPJ,J
WHERE SPJ.JNO = J.JNO AND J.CITY = 北京

2.
DELETE
FROM J
WHERE JNO NOT IN(
SELECT JNO
FROM SPJ);

3.
SELECT SNAME
FROM S
WHERE NOT EXISTS(
SELECT *
FROM P
WHERE NOT EXISTS(
SELECT *
FROM SPJ
WHERE SNO = S.SNO AND PNO = P.PNO));

4.
SELECT DISTINCT JNO
FROM SPJ
WHERE PNO = P1
GROUP BY JNO
HAVIN AVG(QTY) >
(SELECT MAX(QTY)
FROM SPJ
WHERE JNO = J1 );

5.
CREATE VIEW J_S1_P1
AS SELECT J.JNO,J.CITY
FROM SPJ,J
WHERE SPJ.JNO = J.JNO AND SPJ. SNO = S1 AND SPJ.PNO = P1

 

模擬試卷四


一、選擇題
1. 數據庫與文件系統的根本區別在於【】
A. 提高了系統效率
B. 方便了用戶使用
C. 數據的結構化
D. 節省了存儲空間
2. 現有關係模式:
E MP(empno,ename, mgr,sal,workday)
DEPT(deptno,dname,loc)
在以下視圖中,不可能更新的視圖爲【】。
A. 視圖 V1,由 1970 年以後參加工作的僱員組成
B. 視圖 V2,由部門號和各部門的平均工資組成
C. 視圖 V3,由僱員姓名和其領導者姓名組成
D. 視圖 V4,由薪金超出所有僱員平均薪金以上的僱員組成
3. 對由 SELECT—FROM— WHERE—GROUP—ORDER組成的 SQL語句,其
在被 DBMS處理時,各子句的執序次序爲【】。
A. SELECT—FROM—GROUP— WHERE—ORDER
B. FROM—SELECT— WHERE—GROUP—ORDER
C. FROM— WHERE—GROUP—SELECT—ORDER
D. SELECT—FROM— WHERE—GROUP—ORDER


二、簡答題
1. 試給出 BCNF 的定義,並說明滿足 BCNF 的關係有哪些特性。
1.
關係模式 R < U, F > ∈1NF。若 X→ Y 且 Y \ X 時 X 必含有碼,則 R < U,F > ∈BCNF。
滿足 BCNF 關係的特性有:
所有非主屬性對每一個碼都是完全函數依賴;
所有的主屬性對每一個不包含它的碼,也是完全函數依賴;
沒有任何屬性完全函數依賴於非碼的任何一組屬性

三、求解題
設有學生表 S(SNO,SN)(SNO 爲學生號,SN 爲姓名)和學生選修課程表 SC(SNO,CNO,CN,G)(CN O 爲課程號,CN 爲課程名,G 爲成績),試用 SQL 語言完成以下各題
(1) 建立一個視圖 V - SSC(SNO,SN,CNO,CN,G),並按 CNO 升序排序;
(2) 從視圖 V - SSC 上查詢平均成績在 90 分以上的 SN、CN 和 G。

(1)
CREATE VIE W V - SSC(SNO,SN,CNO,CN,G)
AS SELECT S.SNO,S.SN, CNO, SC. CN, SC.G
FROM S, SC
WHERE S.SNO = SC. SNO
ORDER BY CNO;

(2)
SELECT SN, CN, G
FROM V - SSC
GROUP BY SNO
HAVING AVG(G) > 90;

四、求解題
今有如下關係數據庫:
S(SNO,SN,STATUS,CITY)
P(PNO,PN,COLOR, W EIG HT)
J(JNO,JN,CITY)
SPJ(SNO,PNO,JNO,QTY)
其中,S 爲供應單位,P 爲零件,J 爲工程項目,SPJ 爲工程訂購零件的訂單,
其語義爲:某供應單位供應某種零件給某個工程,請用 SQL 完成下列操作。
(1) 求爲工程 J1 提供紅色零件的供應商代號。
(2) 求使用 S1 供應的零件的工程名稱。
(3) 求供應商與工程所在城市相同的供應商提供的零件代號。
(4) 求至少有一個和工程不在同一城市的供應商提供零件的工程代號。
 

(1)
SELECT DISTINCT SPJ.SNO
FROM SPJ,P
WHERE P.PNO = SPJ.PNO AND SPJ.JNO = J1 AND P.COLOR = 紅 ;

(2)
SELECT J.JN
FROM J,SPJ
WHERE J.JNO = SPJ.JNO AND SPJ.SNO = S1 ;

(3)
SELECT DISTINCT SPJ.PNO
FROM S,J,SPJ
WHERE S.SNO = SPJ.SNO AND J.JNO = SPJ.JNO AND S.CITY = J.CITY;

(4)
SELECT DISTINCT SPJ.JNO
FROM S,J,SPJ
WHERE S.SNO = SPJ.SNO AND J.JNO = SPJ.JNO AND S.CITY < > J.CITY;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章