《《數(shù)據(jù)庫原理》模擬題.ppt》由會員分享,可在線閱讀,更多相關(guān)《《數(shù)據(jù)庫原理》模擬題.ppt(47頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、茂名學(xué)院計算機科學(xué)與技術(shù)系,數(shù)據(jù)庫原理模擬題,,考試題型,一、選擇題(20分) 二、填空題(20分) 三、簡答題(20分) 四、綜合題(40分),一、選擇題,1.單個用戶使用的數(shù)據(jù)視圖的描述稱為【 】。 A. 外模式 B. 概念模式 C. 內(nèi)模式 D. 存儲模式,2.數(shù)據(jù)模型的三要素是指【】。 A、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)對象和共享 B、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)控制 C、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完整性 D、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完整性約束條件,,3、只有兩個屬性的關(guān)系,其最高范式必屬于【】。 A、1NF B、3NF C、3NF D、BCNF,,4、SQL語言是【】。 A、高級語言 B、非過程化語言 C、匯編
2、語言 D、宿主語言,,5、在SQL中,與關(guān)系代數(shù)中的投影運算相對應(yīng)的子句是【】。 A、SELECT B、FROM C、WHERE D、ORDER BY,,6、關(guān)于視圖,下列說法中正確的是【】。 A、對視圖的使用,不可以進行查詢和修改操作 B、視圖只能從表中導(dǎo)出 C、視圖與表一樣也存儲著數(shù)據(jù) D、對視圖的操作,最終要轉(zhuǎn)化為對基本表的操作,,7、數(shù)據(jù)庫邏輯設(shè)計時,下列原則中不正確的是【】。 A、一定要避免插入異常 B、一定要避免刪除異常 C、一定要避免數(shù)據(jù)冗余 D、盡量避免多表連接,,8、概念結(jié)構(gòu)設(shè)計的主要工具是【】。 A、數(shù)據(jù)流程圖和數(shù)據(jù)字典 B、E-R圖 C、規(guī)范化理論 D、SQL語言,,9、
3、在數(shù)據(jù)庫中造成數(shù)據(jù)損害的故障里,CPU故障屬于【】。 A、事務(wù)故障 B、系統(tǒng)故障 C、介質(zhì)故障 D、程序故障,,10、在SQL的安全控制中,不屬于視圖機制優(yōu)點的是【】。 A、數(shù)據(jù)安全性 B、程序安全性 C、數(shù)據(jù)獨立性 D、操作簡單性,,11、對于事務(wù)并發(fā)控制處理,若發(fā)現(xiàn)“事務(wù)等待圖” 中存在回路,則【】。 A、出現(xiàn)死鎖 B、出現(xiàn)活鎖 C、事務(wù)執(zhí)行失敗 D、事務(wù)執(zhí)行成功,,12、現(xiàn)有關(guān)系模式: EMP(empno,ename,mgr,sal,workday) DEPT(deptno,dname,loc) 在以下視圖中,不能更新的視圖為【 】。 A. 視圖V1,由1970年以后參加工作的雇
4、員組成。 B. 視圖V2,由部門號和各部門的平均工資組成。 C. 視圖V3,由雇員姓名和其領(lǐng)導(dǎo)者姓名組成。 D. 視圖V4,由薪金超出所有雇員平均薪金以上的 雇員組成。,13、根據(jù)(S,X)鎖相容矩陣,若事務(wù)A已對表T加 上了S鎖,則另一事務(wù)E可以對表T加【】。 A、 S鎖 B、 S和X鎖 C、 X鎖 D、 以上都不是,,14、要保證數(shù)據(jù)庫邏輯數(shù)據(jù)獨立性,需要修改的是【 】。 A. 模式 B. 模式與內(nèi)模式的映射 C. 模式與外模式的映射 D. 內(nèi)模式,,15、在下列關(guān)系運算中,【】的結(jié)果集膨脹規(guī)模最大。 A、選擇 B、投影 C、連接 D、集合交,,16、從E-R
5、模型向關(guān)系模型轉(zhuǎn)換時,一個M :N的聯(lián)系應(yīng)轉(zhuǎn)換為一個關(guān)系模式,則該關(guān)系模式的碼應(yīng)該是【 】。 A、M端實體的碼 B、N端實體的碼 C、M端和N端實體的碼的組合 D、重新選擇其它屬性,,17、在SQL中,對表中的數(shù)據(jù)進行修改的語句是 【】。 A、 UPDATE SET B、 UPDATE FROM C、 ALTER SET D、 ALTER FROM,,18、存在一個等待事務(wù)集 T0,T1,,Tn,其中 T0正等待被T1鎖住的數(shù)據(jù)項,T1正等待被T2鎖 住的數(shù)據(jù)項,,Tn-1正等待被Tn鎖住的數(shù) 據(jù)項,Tn正等待被T0鎖住的數(shù)據(jù)項,則系統(tǒng)的 工作狀態(tài)處于【】。 A、并發(fā)處理 B、封鎖 C
6、、循環(huán) D、死鎖,19、已知關(guān)系R如圖所示,可以作為R的主碼的屬性組是【】。 A、 ab B、 bd C、 ac D、 bc,,20、假設(shè)在某個公司環(huán)境中,一個部門有多名職 工,一名職工只能屬于一個部門,則部門與職 工之間的聯(lián)系是【 】。 A、一對多 B、一對一 C、多對多 D、不確定,,二、填空題,1、數(shù)據(jù)模型的三要素分別是:數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和 。 2、概念模型表示方法很多,其中最常用的是1976年提出的實體聯(lián)系方法,該方法用 來描述現(xiàn)實世界的概念模型。 3、在DBMS中,美國國家標準協(xié)會把數(shù)據(jù)模式分為三級:外模式、模式和 。 4、根據(jù)實體完整性規(guī)則,若屬性A是基本關(guān)系
7、的主屬性,則屬性A的值不能為 。,,5、DBMS的并發(fā)控制是以 為單位進行的。 6、所謂“兩段”鎖的含義是,事務(wù)分為兩個階段,第一階段是獲得封鎖,第二階段是 。 7、若關(guān)系R有m個元組,關(guān)系S有n個元組,那么RS的元組個數(shù)應(yīng)該是 。 8、避免發(fā)生活鎖的方法是采用 的策略。 9、數(shù)據(jù)流程圖(DFD)是數(shù)據(jù)庫設(shè)計中 階段的描述工具。,三、簡答題,1、數(shù)據(jù)獨立性包括哪兩個方面,含義是什么? 2、等值連接與自然連接的區(qū)別是什么? 3、數(shù)據(jù)庫設(shè)計的步驟有哪些? 4、什么是事務(wù)?它有哪四種特性?,四、綜合題,1、假設(shè)有下面兩個模式: 職工(職工號,姓名,年齡,職務(wù),工資,部門號),
8、其中職工號為主碼; 部門(部門號,名稱,經(jīng)理名,電話),其中部門號為主碼; 用SQL語言定義這兩個關(guān)系模式,要求在模式中完成以下完整性約束條件的定義: (1)定義每個模式的主碼; (2)定義參照完整性; (3)定義職工年齡不得超過60歲。,CREATE TABLE 部門 ( 部門號 NUMBER(2), 名稱 VARCHAR(10), 經(jīng)理名 VARCHAR(10), 電話 Char(12), CONSTRAINT PK_DEPT PRIMARY KEY(部門號) ); CREATE TABLE 職工 ( 職工號 NUMBER(4), 姓名 VARCHAR(10), 年
9、齡 NUMBER(2), CONSTRAINT C1 CHECK(年齡<=60), 職務(wù) VARCHAR(9), 工資 NUMBER(7,2), 部門號 number(2), CONSTRAINT PK_EMP PRIMARY KEY(職工號) CONSTRAINT FK_DEPTNO FOREIGN KEY(部門號) REFERENCES 部門(部門號));,2、有關(guān)系模式如下: 商品:P(PNO,PNAME,PRICE),分別表示商品號、名稱、單價。 售貨員:S(SNO,SNAME,SXB),分別表示售貨員號、姓名、性別。 銷售記錄:R(PNO、SNO、NUM),分別表示
10、商品號、售貨員號、銷售數(shù)量。 要求用SQL查詢完成: (1)所有售貨員都出售過的商品名稱。 (2)每個銷售人員的總計銷售金額。,,,(1) SELECT PNAME FROM P WHERE NOT EXIST ( SELECT * FROM S WHERE NOT EXIST ( SELECT * FROMR WHERE PNO=P.PNO AND SNO=S.SNO ) );,(2) SELECT SNAME, SUM (NUM * PRICE) FROM R, S, P WHERE R.SNO=S.SNO AND R.PNO=P.PNO GROUP BY S.SNAME,3、假設(shè)某公司
11、銷售業(yè)務(wù)中使用的訂單格式如下: 訂單號:1145 訂貨日期:09/15/2002 客戶名稱:ABC 客戶電話:8141763 總金額:12000.00 公司的業(yè)務(wù)規(guī)定: (1)訂單號是唯一的,每張訂單對應(yīng)一個訂單號; (2)一張訂單可以訂購多種產(chǎn)品,每一種產(chǎn)品可以在多個訂單中出現(xiàn); (3)一張訂單有一個客戶,且一個客戶可以有多張訂單; (4)每一個產(chǎn)品編號對應(yīng)一種產(chǎn)品的品名和價格; (5)每一個客戶有一個確定的名稱和電話號碼。,根據(jù)上述表格和業(yè)務(wù)規(guī)則設(shè)計關(guān)系模式為: R(訂單號,訂貨日期,客戶名稱,客戶電話, 產(chǎn)品編號,品名
12、,價格,數(shù)量) 問: (1)寫出R的基本函數(shù)依賴集。 (2)找出R的候選碼。 (3)判斷R最高可達到第幾范式? 為什么? (4)給出一個可能的3NF分解。 解:(1)F= 訂單號客戶名稱, 客戶名客戶電話, 產(chǎn)品編號(品名,價格), (訂單號,產(chǎn)品編號)數(shù)量 (2)訂單號,產(chǎn)品編號,(3)第1范式 因為存在訂單號客戶名稱,即客戶名稱這個非主屬性對碼是部分函數(shù)依賴。 (4) R1(訂單號,訂貨日期,客戶名稱) R2(客戶名稱,客戶電話) R3(產(chǎn)品編號,品名,價格) R4(訂單號,產(chǎn)品編號,數(shù)量),4、某醫(yī)院病房計算機管理中需要如下信息: 科室:科名,科地址,
13、科電話,醫(yī)生姓名 病房:病房號,床位號,所屬科室名 醫(yī)生:姓名,職稱,所屬科室名,年齡,工作證號 病人:病歷號,姓名,性別,主管醫(yī)生,病房號 其中,一個科室有多個病房、多個醫(yī)生,一個病房只能屬于一個科室,一個醫(yī)生只屬于一個科室,但可負責(zé)多個病人的診治,一個病人的主管醫(yī)生只有一個。 完成如下設(shè)計: (1)設(shè)計該計算機管理系統(tǒng)的E-R圖; (2)將該E-R圖轉(zhuǎn)換為關(guān)系模型結(jié)構(gòu); (3)指出轉(zhuǎn)換結(jié)果中每個關(guān)系模式的候選碼。,解題思路:先弄清有哪些實體、屬性、聯(lián)系,,n,,,病人,入住,,,,,病房,,1,n,,,醫(yī)生,從屬,,,,,科室,,1,診治,,,組成,,,n,1,n,1,,病房號,床位號,科
14、名,科地址,科電話,病歷號,姓名,性別,姓名,職稱,年齡,工作證號,(2)對應(yīng)的關(guān)系模型結(jié)構(gòu)如下: 科室(科名,科地址,科電話) 病房(病房號,床位號,科室名) 醫(yī)生(工作證號,姓名,職稱,科室名,年齡) 病人(病歷號,姓名,性別,主管醫(yī)生,病房號) (3)每個關(guān)系模式的候選碼如下: 科室的候選碼是:科名; 病房的候選碼是:病房號,床位號; 醫(yī)生的候選碼是:工作證號; 病人的候選碼是:病歷號。,練習(xí),假設(shè)某商業(yè)集團數(shù)據(jù)庫中有一關(guān)系模式R如下: R(商店編號,商品編號,數(shù)量,部門編號,負責(zé)人) 如果規(guī)定: 每個商店的每種商品只在一個部門銷售。 每個商店的每個部門只有一個負責(zé)人。
15、每個商店的每種商品只有一個庫存數(shù)量。 試回答下列問題: (1)根據(jù)上述規(guī)定,寫出關(guān)系模式R的基本函數(shù)依賴。 (2)找出關(guān)系模式R的候選碼。 (3)關(guān)系模式R最高達到第幾范式?為什么? (4)如果R不屬于3NF,請將R分解成3NF模式集。,(1)(商店編號,商品編號)部門編號 (商店編號,部門編號)負責(zé)人 (商店編號,商品編號)商品庫存數(shù)量 (2)(商店編號,商品編號) (3)2NF。因為R中存在著非主屬性“負責(zé)人”對候選碼(商店編號,商品編號)的傳遞依賴,所以R不屬于3NF。 (4)R1(商店編號,商品編號,商品庫存數(shù)量,部門編號) R2(商店編號,部門編號,負責(zé)人),旅館
16、的客房管理問題應(yīng)包括客房管理與收費管理,現(xiàn)在用以下關(guān)系模式: 收費(住客身份證號,住客姓名,性別,年齡,地址,客房號,床位號,收費標準,住宿日期,退房日期,預(yù)付款) 假設(shè): (1)旅館住客可能存在同名現(xiàn)象。 (2)一個客人可以多次、不同時間到該旅館住宿。 試回答下列問題: (1)根據(jù)上述規(guī)定,寫出該關(guān)系模式的基本函數(shù)依賴。 (2)找出該關(guān)系模式的候選碼。 (3)該關(guān)系模式最高已經(jīng)達到第幾范式?為什么? (4)如果該關(guān)系模式不屬于3NF,該關(guān)系模式分解成3NF模式集。,(1)基本函數(shù)依賴有: 住客身份證號(住客姓名,性別,年齡,地址) (客房號,床位號)收費標準 (客房號,床位號,住宿日期)
17、(住客姓名,性別,年齡,地址,收費標準,預(yù)付款,退房日期) (2)候選碼是:(客房號,床位號,住宿日期) (3)該關(guān)系模式最高只達1NF。 因為存在非主屬性對碼的部分函數(shù)依賴。 (4) 住客信息(住客身份證號,住客姓名,性別,年齡, 地址), 床位信息(客房號,床位號,收費標準), 住宿信息(客房號,床位號,住宿日期, 住客身份證號,預(yù)付款,退房日期),假設(shè)有如下的關(guān)系模式: S(供應(yīng)商),數(shù)據(jù)項有SNO、SNAME、SADDR; P(零件),數(shù)據(jù)項有PNO、PNAME、COLOR、WEIGHT; J(工程項目),數(shù)據(jù)項有JNO、JNAME、JADDR; SPJ(
18、供應(yīng)情況),數(shù)據(jù)項有SNO、PNO、JNO、QTY,表示某供應(yīng)商供應(yīng)某種零件給某工程項目的數(shù)量QTY; 并規(guī)定屬性:SNO、SNAME、SADDR、PNO、PNAME、COLOR、JNO、JNAME、JADDR為字符型數(shù)據(jù);WEIGHT、QTY為數(shù)值型數(shù)據(jù);列的寬度自定義。 (1)試用SQL語句定義S和SPJ表的結(jié)構(gòu)(應(yīng)包括主鍵子句和外鍵子句)。,(2)找出工程項目J2使用的各種零件的名稱及其數(shù)量。 (3)試用SQL語句建立一視圖,該視圖定義某指定供應(yīng)商“上海電機廠”為“三峽工程”項目提供的零件的編號、名稱清單。 (4)試給出一SQL語句,查詢“三峽工程”項目所使用的零件的總重量。,(1)CR
19、EATE TABLE S (SNO CHAR(8), SNAME CHAR(8), SADDR CHAR(20), PRIMARY KEY (SNO) ); CREATE TABLE SPJ (SNO CHAR(8), PNO CHAR(10), JNO CHAR(8), QTY INT, PRIMARY KEY (SNO, PNO, JNO), FOREIGN KEY (SNO) REFERENCES S (SNO), FOREIGN KEY (PNO) REFERENCES P (PNO), FOREIGN KEY (JNO) REFERENCES J (JNO), );,(2)SELEC
20、T P.PNAME,SPJ.QTY FROM P,SPJ WHERE P.PNO=SPJ.PNO AND SPJ.JNO=J2 (3)CREATE VIEW V1 AS SELECT P.PNO, PNAME FROM S, J, SPJ WHERE S.SNO = SPJ.SNO AND P.PNO = SPJ.PNO AND J.JNO = SPJ.JNO AND S.SNAME = 上海電機廠 AND J.JNAME = 三峽工程; (4)SELECT SUM( QTY*WEIGHT) FROM P, SPJ, J WHERE P.PNO = SPJ.PNO AND J.JNO = S
21、PJ.JNO AND J.JNAME =三峽工程;,現(xiàn)有如下關(guān)系模式: 借閱(圖書編號,書名,作者名,出版社, 讀者編號,讀者姓名,借閱日期,歸還日期) 試回答下列問題: (1)讀者姓名是候選碼嗎?說明判斷的理由。 (2)寫出該關(guān)系模式的主碼。 (3)該關(guān)系模式中是否存在部分函數(shù)依賴和傳遞依賴? 如果存在,請各寫出一個。 (4)該關(guān)系模式最高滿足第幾范式?請說明理由。 (5)如何分解該關(guān)系模式才能使分解后的關(guān)系模式滿足 第二范式(2NF)?,(1)讀者姓名不是候選碼。 (2)主碼是(讀者編號,圖書編號,借閱日期) (3)存在部分函數(shù)依賴: (讀者編號,圖書編號,借閱日期) 讀者姓名 存在傳遞函數(shù)依賴: (讀者編號,圖書編號,借閱日期) 讀者姓名 (4)滿足1NF。因為存在部分函數(shù)依賴和傳遞函數(shù)依賴 讀者(讀者編號,讀者姓名) 圖書(圖書編號,書名,作者名,出版社) 借閱(圖書編號,讀者編號,借閱日期,歸還日期,