數(shù)據(jù)庫系統(tǒng)概論作業(yè)【高教成教】
《數(shù)據(jù)庫系統(tǒng)概論作業(yè)【高教成教】》由會員分享,可在線閱讀,更多相關(guān)《數(shù)據(jù)庫系統(tǒng)概論作業(yè)【高教成教】(25頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 《數(shù)據(jù)庫系統(tǒng)概論》作業(yè) 第一章 概述 1. 層次模型的數(shù)據(jù)結(jié)構(gòu)是__樹形__結(jié)構(gòu);網(wǎng)狀模型的數(shù)據(jù)結(jié)構(gòu)是 網(wǎng)狀 結(jié)構(gòu);關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)是__二維表__結(jié)構(gòu)。 2.數(shù)據(jù)庫系統(tǒng)具有“數(shù)據(jù)獨立性”特點的原因是因為在數(shù)據(jù)庫系統(tǒng)中( B ) (A)、采用磁盤作為外存 (B)、采用三級模式結(jié)構(gòu) (C)、使用OS來訪問數(shù)據(jù) (D)、用宿主語言編寫應用程序 3. 數(shù)據(jù)庫(DB)、數(shù)據(jù)庫系統(tǒng)(DBS)和數(shù)據(jù)庫管理系統(tǒng)(DBMS)三者之間的關(guān)系是( A )。 (A)、 DBS包括DB和DBMS (B)、 DBMS包括DB和DBS (C)、 DB包括DBS和DBM
2、S (D)、 DBS就是DB,也就是DBMS 4.數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)獨立性體現(xiàn)在( B ) (A)、不會因為數(shù)據(jù)的變化而影響到應用程序 (B)、不會因為系統(tǒng)數(shù)據(jù)存儲結(jié)構(gòu)和數(shù)據(jù)邏輯結(jié)構(gòu)的變化而影響應用程序 (C)、不會因為存儲策略的變化而影響存儲結(jié)構(gòu) (D)、不會因為某些存儲結(jié)構(gòu)的變化而影響其他的存儲結(jié)構(gòu) 5.要保證數(shù)據(jù)庫的數(shù)據(jù)獨立性,需要修改的是( A ) (A)、模式與外模式 (B)、模式與內(nèi)模式 (C)、三層之間的兩種映射 (D)、三層模式 6.下述( D )不是DBA(數(shù)據(jù)庫管理員
3、)的職責。 (A)、完整性約束說明 (B)、定義數(shù)據(jù)庫模式 (C)、數(shù)據(jù)庫安全 (D)、數(shù)據(jù)庫管理系統(tǒng)設(shè)計 7.( B )是按照一定的數(shù)據(jù)模型組織的,長期儲存在計算機內(nèi),可為多個用戶共享的數(shù)據(jù)的集合。 (A)、數(shù)據(jù)庫系統(tǒng) (B)、數(shù)據(jù)庫 (C)、關(guān)系數(shù)據(jù)庫 (D)、數(shù)據(jù)庫管理系統(tǒng) 8.數(shù)據(jù)模型的三要素是( D )。 (A)、外模式、模式、內(nèi)模式 (B)、關(guān)系模型、層次模型、網(wǎng)狀模型 (C)、實體、聯(lián)系、屬性 (D) 、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作、完整性約束
4、 9. 簡述數(shù)據(jù)庫系統(tǒng)的主要特點。 (1)、 數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)庫系統(tǒng)實現(xiàn)整體數(shù)據(jù)的結(jié)構(gòu)化,這是數(shù)據(jù)庫的主要特征之一, 也 是數(shù)據(jù)庫系統(tǒng)與文件系統(tǒng)的本質(zhì)區(qū)別。 (2)數(shù)據(jù)的共享性高,冗余度低,易擴充數(shù)據(jù)庫的數(shù)據(jù)不再面向某個應用而是面向整個系統(tǒng), (3)數(shù)據(jù)獨立性高數(shù)據(jù)獨立性包括數(shù)據(jù)的物理獨立性和數(shù)據(jù)的邏輯獨立性。 (4) 數(shù)據(jù)由 DBMS 統(tǒng)一管理和控制數(shù)據(jù)庫的共享是并發(fā)的共享, 即多個用戶可以同時存取數(shù)據(jù)庫中的數(shù)據(jù)甚至可以同時存取數(shù)據(jù)庫中同一個數(shù)據(jù) 10.簡述數(shù)據(jù)庫系統(tǒng)的三級模式和兩級映像。 答: 數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)是指數(shù)據(jù)庫系統(tǒng)是由外模式、 模式和內(nèi)模式三級
5、構(gòu)成。 模式也稱邏輯模式,是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是所有用戶的公共數(shù)據(jù)視圖。模式實際上是數(shù)據(jù)庫數(shù)據(jù)在邏輯級上的視圖,一個數(shù)據(jù)庫只有一個模式, 數(shù)據(jù)庫模式以某一種數(shù)據(jù)模型為基礎(chǔ), 統(tǒng)一綜合地考慮了所有用戶的需求,并將這些需求有機地結(jié)合成一個邏輯整體。 外模式也稱子模式或用戶模式, 它是數(shù)據(jù)庫用戶 ( 包括應用程序員和最終用戶 ) 能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述, 是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖, 是與某一應用有關(guān)的數(shù)據(jù)購邏輯表示。 外模式通常是模式的子集。 一個數(shù)據(jù)庫可以有多個外模式。 內(nèi)模式也稱存儲模式,一個數(shù)據(jù)庫只有一個內(nèi)模式,它是數(shù)據(jù)物理結(jié)構(gòu)和存儲方式的描述
6、,是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式 第二章 關(guān)系數(shù)據(jù)庫 1. 設(shè)有如下圖所示的關(guān)系R,W和D: 計算下列代數(shù)表達式的結(jié)果: (1)R1=πY,T(R) (2)R2=бp>5^T=’e’(R) (3)R3=(RW) (4)R4=R÷D 2、 設(shè)有如下圖所示的關(guān)系S,SC,C: 關(guān)系S S# SNAME AGE SEX 1 李強 23 男 2 劉麗 22 女 3 張友 22 男 關(guān)系C C# CNAME TEACHER K1 C語言 王華 K5 數(shù)據(jù)庫原理 程軍 K8 編譯原理 程軍 關(guān)系SC
7、 S# C# GRADE 1 K1 83 2 K1 85 3 K1 92 2 K5 90 3 K5 84 3 K8 80 請用關(guān)系代數(shù)表達式表示下列查詢語句: (1)檢索“程軍”老師所授課程的課程號(C#)和課程名(CNAME)。 (2)檢索“李強”同學不學課程的課程號。 (3)檢索既選修了K1課程,也選修了K5課程的學生學號(S#)。 (4)檢索選修了課程表中的全部課程的學生姓名(SNAME)。 (5)檢索選修課程名為“C語言”的學生學號(S#)和姓名(SNAME)。 3.在關(guān)系中,“元數(shù)”(arity)是指( A
8、 ) (A).行數(shù) (B).元組個數(shù) (C).關(guān)系個數(shù) (D).屬性個數(shù) 4.在關(guān)系中,“基數(shù)”(cardinality)是指( A ) (A).列數(shù) (B).元組個數(shù) (C).關(guān)系個數(shù) (D).屬性個數(shù) iθj 5.設(shè)W = R S,且W、R、S的元組個數(shù)分別為p、m、n,那么三者之間滿足( D ) (A).p<(m+n) ?。˙).p≤(m+n) (C).p<(m×n) ?。―).p≤(m×n) 6.下列式子中,不正確的是( D ) (A).R-S=R-(R∩S) (B).R=
9、(R-S)∪(R∩S) (C).R∩S=S-(S-R) (D).R∩S = S-(R-S) 7.如果兩個關(guān)系沒有公共屬性,那么其自然聯(lián)接操作( A ) (A).轉(zhuǎn)化為笛卡爾積操作 (B).轉(zhuǎn)化為聯(lián)接操作 (C).轉(zhuǎn)化為外部并操作 (D).結(jié)果為空關(guān)系 8.一個關(guān)系只有一個( D ?。? (A)、候選碼 ?。˙)、外碼 (C)、超碼 (D)、主碼 9.下面的選項不是關(guān)系的基本特征( A ) (A)、不同的列有不同的數(shù)據(jù)類型 (B)、不同的列有不同的列名 (C)、與行的次序無關(guān) ?。―)、與列的次序無關(guān)
10、 第三章 SQL語言 有兩個基本表: 表EMP(ENO,ENAME,SALARY,DNO) 其屬性分別表示職工的工號、姓名、工資和所在部門的編號 表DEPT(DNO,DNAME) 其屬性分別表示部門的編號和部門名 1. 有一SQL語句: SELECT DNO,COUNT(DISTINCT ENO) FROM EMP GROUP BY DNO; 該SQL語句實現(xiàn)了以下哪個功能?( C ) (A).統(tǒng)計職工的總?cè)藬?shù) (B).統(tǒng)計每一部門的職工人數(shù) (C).統(tǒng)計職工
11、服務(wù)的部門數(shù)目 (D).統(tǒng)計每一職工服務(wù)的部門數(shù)目 2.有一個SQL語句: SELECT ENO,ENAME FROM EMP WHERE DNO NOT IN (SELECT DNO FROM DEPT WHERE DNAME='金工車間'; 其等價的關(guān)系代數(shù)表達式是:( C ) (A).πENO,ENAME(бDNAME ≠ '金工車間'(EMP?DEPT)) DNAME≠'金工車間' (B).πENO,ENAME(EMP ? DEPT) (C).πENO,ENAME(EMP)-πEN
12、O,ENAME(бDNAME='金工車間'(EMP?DEPT)) (D).πENO,ENAME(EMP)-πENO,ENAME(бDNAME≠'金工車間'(EMP?DEPT)) 3.有一個SQL語句: UPDATE EMP SET SALARY=SALARY*1.05 WHERE DNO='D6' AND SALARY<(SELECT AVG(SALARY) FROM EMP); 其等價的修改語句為( C ) (A).為工資低于D6部門平均工資的所有職工加薪5% (B).為工資低于整個企業(yè)平均工資的職工加薪5% (C).為在D6部門
13、工作、工資低于整個企業(yè)平均工資的職工加薪5% (D).為在D6部門工作、工資低于本部門平均工資的職工加薪5% 4.SQL中,謂詞EXISTS可用來測試一個集合是否( C ) (A).有重復元組 (B).有重復的列名 (C).為非空集合 (D).有空值 5.SQL中,與“NOT IN”等價的操作符是( B ) (A).=SOME (B).< >SOME (C).=ALL ?。―).< >ALL 6. 下列關(guān)于索引的敘述,正確的是( A )。 (A)、可以根據(jù)需要在基本表上建立一個或多個索引,從而提高系統(tǒng)的查詢效
14、率。 (B)、一個基本表最多只能有一個索引。 (C)、建立索引的目的是為了給數(shù)據(jù)表中的元素指定別名,從而使別的表也可以引用這個元素。 ?。―)、一個基本表至少要存在一個索引。 7. 下面列出的關(guān)于視圖的條目中,不正確的是( C )。 (A)、視圖是外模式 (B)、視圖是虛表 (C)、使用視圖可以加快查詢語句的執(zhí)行速度 (D)、使用視圖可以簡化查詢語句的編寫 8. 設(shè)數(shù)據(jù)庫中有三個關(guān)系: 職工表 EMP(E#,ENAME,AGE,SEX,ECITY), 其屬性分別表示職工工號、姓名、年齡、性別和籍貫。 工作表 WORKS(E#,C#,SALARY), 其屬
15、性分別表示職工工號、工作的公司編號和工資。 公司表 COMP(C#,CNAME,CITY), 其屬性分別表示公司編號、公司名稱和公司所在城市。 請寫出完成下列操作的SQL語句: ① 用CREATE TABLE語句創(chuàng)建上述三個表,需定義出各表的主鍵和外鍵。 解:① CREATE TABLE EMP ( E# CHAR(4) NOT NULL, ENAME CHAR(8) NOT NULL, AGE S MALLINT, SEX CHAR(1), ECITY CHAR(20), PRIMARY KEY(E#)) ; CREATE TABLE COMP ( C# CHAR(4) N
16、OT NULL, CNAME CHAR(20) NOT NULL, CITY CHAR(20), PRIMARY KEY( C#)); CREATE TABLE WORKS ( E# CHAR(4) NOT NULL, C# CHAR(4) NOT NULL, SALARY S MALLINT, PRIMARY KEY(E#, C#), FOREIGN KEY(E#) REFERENCES EMP(E#), FOREIGN KEY(C#) RE FERENCES COMP(C#)); ② 檢索超過50歲的男職工的工號和姓名。 SELECT E#, ENAME FRO
17、M EMP WHERE AGE>50 AND SEX='M' ; ③ 假設(shè)每個職工只能在一個公司工作,檢索工資超過1000元的男性職工工號和姓名。 SELECT EMP.E#, ENAME FROM EMP, WORKS WHERE EMP.E#=WORKS.E# AND SALARY>1000 ; ④ 假設(shè)每個職工可在多個公司工作,檢索在編號為C4和C8公司兼職的職工工號和姓名。 SELECT A.E#, A.ENAME FROM EMP A, WORKS B, WORKS C WHERE A.E#=B.E# AND B.E# =C.E# AND B.C#='C4'
18、 AND C.C#='C8' ; ⑤ 檢索在“聯(lián)華公司”工作、工資超過1000元的男性職工的工號和姓名。 SELECT A.E#, A.ENAME FROM EMP A, WORKS B, COMP C WHERE A.E#=B.E# AND B.C#= C.C# AND CNAME=' 聯(lián)華公司 ' AND SALARY>1000 AND SEX='M' ; ⑥ 假設(shè)每個職工可在多個公司工作,檢索每個職工的兼職公司數(shù)目和工資總數(shù),查詢結(jié)果顯示為(E#,NUM,SUM_SALARY),分別表示工號、兼職的公司數(shù)目和工資總數(shù)。 SELECT E#, COUNT(C#) AS
19、 NUM, SUM(SALARY) AS SUM_SAL ARY FROM WORKS GROUP BY E#; ⑦ 工號為E6的職工在多個公司工作,試檢索至少在E6職工兼職的所有公司工作的職工工號。SELECT X.E# FROM WORKS X WHERE NOT EXISTS (SELECT * FROM WORKS Y WHERE E#='E6' AND NOT EXISTS (SELECT * FROM WORKS Z WHERE Z.E#=X.E# AND Z.C#=Y .C#)); ⑧ 檢索聯(lián)華公司中低于本公司平均工資的職工工號和姓名。 SELECT
20、A.E#, A.ENAME FROM EMP A, WORKS B, COMP C WHERE A.E#=B.E# AND B.C#= C.C# AND CNAME=' 聯(lián)華公司 ' AND SALARY<(SELECT A VG(SALARY) FROM WORKS, COMP WHERE WORKS.C#=COMP.C# AND CNAME=' 聯(lián)華公司 '); ⑨ 在每一公司中為50歲以上職工加薪100元(若職工為多個公司工作,可重復加)。 UPDATE WORKS SET SALARY=SALARY+100 WHERE E# IN (SELECT E# FROM EM
21、P WHERE AGE>50) ; ⑩ 在EMP表和WORKS表中刪除年齡大于60歲的職工有關(guān)元組。 DELETE FROM WORKS WHERE E# IN (SELECT E# FROM EMP WHERE AGE>60) ; DEL ETE FROM EMP WHERE AGE>60; 第四章 數(shù)據(jù)庫安全性 1.以下( D )不屬于實現(xiàn)數(shù)據(jù)庫安全性的主要技術(shù)和方法。 (A)、存取控制技術(shù) (B)、視圖技術(shù) (C)、審計技術(shù) (D)、出入機房登記和加鎖 2.把對關(guān)系SC的GRADE屬性的修改權(quán)授予用戶ZHAO的S
22、QL語句是( C )。 (A)、GRANT GRADE ON SC TO ZHAO (B)、GRANT UPDATE ON SC TO ZHAO (C)、GRANT UPDATE(GRADE) ON SC TO ZHAO (D)、GRANT UPDATE ON SC(GRADE) TO ZHAO 3.保護數(shù)據(jù)庫、防止未經(jīng)授權(quán)的或不合法的使用造成的數(shù)據(jù)泄露、更改破壞。這是數(shù)據(jù)庫的( A )。 (A)、安全性 (B)、完整性 (C) 、并發(fā)控制 (D)、恢復 4.今有兩個關(guān)系模式: (1)職工(職工
23、號,姓名,年齡,職務(wù),工資,部門號),其中職工號為主碼;部門號為外碼; (2)部門(部門號,名稱,經(jīng)理名,地址,電話),其中部門號是主碼; 請用SQL語言的GRANT語句(加上視圖機制)完成以下授權(quán)定義: 用戶楊蘭具有SELECT每個部門的職工最高工資,最低工資,平均工資的權(quán)力,但他不能查看每個人的工資。 CREATE VIEW 部門工資 AS SELECT 部門 .名稱 ,MAX( 工資 ),MIN( 工資 ),AVG(工資 ) FROM 職工 ,部門 WHERE 職工 .部門號 =部門 .部門號 GROUP BY 職工 .部門號 GRANT
24、SELECT ON 部門工資 TO 楊蘭 ; 第五章 數(shù)據(jù)庫完整性 1.關(guān)于主碼約束以下說法錯誤的是( c ) A.一個表中只能設(shè)置一個主碼約束 B.允許空值的字段上不能定義主碼約束 C.允許空值的字段上可以定義主碼約束 D.可以將包含多個字段的字段組合設(shè)置為主碼 2.在SQL Server中,可以使用( C )語句創(chuàng)建存儲過程。 A.Create Trigger B.Install Procedure C.Create Procedure D.Create View 3
25、.SQL Server為每個觸發(fā)器創(chuàng)建了兩個臨時表,它們是( B )。 A.Updated和Deleted B.Inserted 和Deleted C.Inserted 和Updated D.Seleted和Inserted 4.設(shè)有供應商關(guān)系S和零件關(guān)系P,如下圖所示,S和P的主碼分別是“供應商號”和“零件號”,P的外碼是“供應商號”。 分析下列4個操作能否被正確執(zhí)行,并說明理由。 (1)在P中插入元組(′P2′,′白′,′A2′) (2)在P中插入元組(NULL,′綠′,′A1′)
26、 (3)在P中插入元組(′P4′,′白′,′A5′) (4)在P中插入元組(′P4′,′綠′,′A2′) 答:(1)不能正確執(zhí)行,插入操作破壞了實體完整性約束,待插入的元組的“零件 號”屬性值“P2”,在 P 表中已經(jīng)存在。 “零件號”作為主鍵,其值不能重復, 必須唯一。 (2)不能正確執(zhí)行,插入操作破壞了實體完整性約束,待插入的元組的“零件 號”屬性值為空, “零件號”作為主屬性,其值不能為空。 (3)不能正確執(zhí)行,插入操作破壞參照完整性約束,待插入的元組的“供應商 號”屬性值“A5”,在 S 中找不到?jīng)]有相應的主鍵值。 (4) 能正確執(zhí)行,因為滿足數(shù)據(jù)庫的實體完整性
27、和參照完整性。 5.假設(shè)有下面兩個關(guān)系模式: 職工(職工號,姓名,年齡,職務(wù),工資,部門號),其中職工號為主碼;部門號為外碼。 部門(部門號,名稱,經(jīng)理名,電話),其中部門號為主碼,經(jīng)理名為外碼 請用SQL語言定義這兩個關(guān)系模式,要求在關(guān)系模式中完成以下完整性約束條件的定義: (1)定義每個模式的主碼; (2)定義參照完整性;職工關(guān)系模式中的部門號屬性參照部門關(guān)系模式中的主碼部門號;部門關(guān)系模式中的經(jīng)理名屬性參照職工關(guān)系模式中的姓名屬性。 (3)定義職工年齡不超過60歲。 答: CREATE TABLE DEPT ( Deptno NUMBER(2), Dep
28、tname VARCHAR(10), Manager VARCHAR(10), PhoneNumber Char(12), CONSTRAINT PK_SC RIMARY KEY(Deptno) ); CREATE TABLE EMP ( Empno NUMBER(4), Ename VARCHAR(10), Age NUMBER(2) CONSTRAINT C1 CHECK ( Age<=60), Job VARCHAR(9), Sal NUMBER(7,2), Deptno NUMBER(2), CONSTRAINT PK_EMP RIMARY KEY(Empno)
29、, CONSTRAINT FK_DEPTNO FOREIGN KEY(Deptno) REFFERENCES DEPT(Deptno) ); 第六章 關(guān)系數(shù)據(jù)理論 1. 為了設(shè)計出性能較優(yōu)的關(guān)系模式,必須進行規(guī)范化,規(guī)范化主要的理論依據(jù)是( A ) (A)、關(guān)系規(guī)范化理論 (B)、關(guān)系代數(shù)理論 (C)、數(shù)理邏輯 (D)、關(guān)系運算理論 2. 規(guī)范化理論是關(guān)系數(shù)據(jù)庫進行邏輯設(shè)計的理論依據(jù),根據(jù)這個理論,關(guān)系數(shù)據(jù)庫中的關(guān)系必須滿足:每一個屬性都是( B ) (A)、長度不變的
30、 (B)、不可分解的 (C)、互相關(guān)聯(lián)的 (D)、互不相關(guān)的 3. 已知關(guān)系模式R(A,B,C,D,E),及其上的函數(shù)相關(guān)性集合F={A→D ,B→C,E→A},該關(guān)系模式的候選碼是( B ) (A)、AB (B)、BE (C)、CD (D)、DE 4. 關(guān)系數(shù)據(jù)庫規(guī)范化是為了解決關(guān)系數(shù)據(jù)庫中的( A ) 問題而引入的。 (A)、插入、刪除、更新異常和數(shù)據(jù)冗余 (B)、提高查詢速度 (C)、減少數(shù)據(jù)操作的復雜性 (D)、保證數(shù)據(jù)的安全性和完整性 5. 數(shù)據(jù)庫中的冗余數(shù)據(jù)是指
31、( D )的數(shù)據(jù)。 (A)、容易產(chǎn)生錯誤 (B)、容易產(chǎn)生沖突 (C)、無關(guān)緊要 (D)、由基本數(shù)據(jù)導出 6. 在關(guān)系規(guī)范化過程中,分解關(guān)系的基本原則是( B ) I. 實現(xiàn)無損失連接 II.分解后的關(guān)系相互獨立 III.保持原有的函數(shù)依賴關(guān)系 (A)、I和II (B)、I和III (C)、I (D)、II 7. 設(shè)關(guān)系模式R(A,B,C),F(xiàn)是R上成立的函數(shù)依賴集合,F(xiàn)={B→C},則分解P={AB,BC}相對于F( A )。 (A)、是無損失聯(lián)接,也是保持函數(shù)依賴的分解 (B)、是無損失聯(lián)接
32、,但不保持函數(shù)依賴的分解 (C)、不是無損失聯(lián)接,但保持函數(shù)依賴的分解 (D)、既不是無損失聯(lián)接,也不保持函數(shù)依賴的分解 第8到第9題基于以下的敘述:有關(guān)系模式A(C,T,H,R,S),其中各屬性的含義是:屬性C代表課程名,屬性T代表教師姓名,屬性H代表上課時間,屬性R代表上課教室,屬性S代表學生姓名。 根據(jù)語義有如下函數(shù)依賴集:F={ C→T,(H,R) →C,(H,T)→R, (H,S)→R}。 8. 請問該關(guān)系模式A的候選碼是( D ) (A)、C (B)、(H,R) (C)、(H,T) (D)、(H,S) 9. 關(guān)系模
33、式A的規(guī)范化程度最高達到( B ) (A)、 1NF (B)、2NF (C)、3NF (D)、BCNF 10.設(shè)有關(guān)系模式R(職工編號,日期,日營業(yè)額,部門名,部門經(jīng)理),該模式統(tǒng)計商店里每個職工的日營業(yè)額,以及職工所在的部門和經(jīng)理信息。 如果規(guī)定:每個職工每天只有一個營業(yè)額;每個職工只在一個部門工作;每個部門只有一個經(jīng)理。 試回答下列問題: (1)根據(jù)上述規(guī)定,寫出模式R的基本函數(shù)依賴和候選碼; (2)說明R不是2NF的理由,并把R分解成2NF模式集; (3)進而分解成3NF模式集。 答: (1)基本的 FD 有三個: (職
34、工編號,日期 )->日營業(yè)額 職工編號 ->部門編號 部門名 ->部門經(jīng)理 R 的關(guān)鍵碼為 (職工編號,日期 ) (2)R 中有兩個這樣的 FD: (職工編號,日期 )-> ( 部門名,部門經(jīng)理 ) 職工編號 ->(部門名,部門經(jīng)理 ) 可見前一個 FD 是部分依賴,關(guān)系模式中存在非主屬性對碼的部分函數(shù)依賴,所以 R 不是 2NF 模式。 R 應分解成 R1(職工編號,部門名,部門經(jīng)理 ) R2(職工編號,日期,日營業(yè)額 ) 此處, R1 和 R2 都是 2NF。 (3)R2 已是 3NF 模式。 在 R1 中,存在兩個 FD:職工編號 ->部門名 部門名 ->部門經(jīng)理
35、因此, “職工編號 ->部門經(jīng)理”是一個傳遞依賴, R1 不是 3NF 模式。 R1 應分解成 R11(職工編號,部門名 ) R12(部門名,部門經(jīng)理 ) 這樣, ρ =(R11,R12,R2) 是一個 3NF 模式集 第七章 數(shù)據(jù)庫設(shè)計 1. 數(shù)據(jù)庫設(shè)計中,將E-R圖轉(zhuǎn)換成關(guān)系數(shù)據(jù)模型的過程屬于( B ) (A)、需求分析階段 (B)、邏輯設(shè)計階段 (C)、概念設(shè)計階段 (D)、物理設(shè)計階段 2. 數(shù)據(jù)庫設(shè)計的概念設(shè)計階段,表示概念結(jié)構(gòu)的常用方法和描述工具是( C )。 (A)、層次分析法和層次
36、結(jié)構(gòu)圖 (B)、數(shù)據(jù)流程分析法和數(shù)據(jù)流程圖 (C)、實體聯(lián)系法和實體聯(lián)系圖 (D)、結(jié)構(gòu)分析法和模塊結(jié)構(gòu)圖 3. 在E-R模型向關(guān)系模型轉(zhuǎn)換時,M:N的聯(lián)系轉(zhuǎn)換為關(guān)系模式時,其關(guān)鍵字是( C )。 (A)、M端實體的關(guān)鍵字 (B)、N端實體的關(guān)鍵字 (C)、M,N端實體的關(guān)鍵字組合 (D)、重新選取其他屬性 4. 在E-R模型中,如果有3個不同的實體集,3個M:N聯(lián)系,根據(jù)E-R模型轉(zhuǎn)換為關(guān)系模型的規(guī)則,轉(zhuǎn)換為關(guān)系的數(shù)目是( C )。 (A )、4 (B)、5 (C)、6 (D
37、)、7 5. 進行數(shù)據(jù)庫系統(tǒng)需求分析時,數(shù)據(jù)字典的內(nèi)容和作用是什么? 答:答: 數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的集合。 數(shù)據(jù)字典的內(nèi)容通常包括: ( l ) 數(shù)據(jù)項;( 2 )數(shù)據(jù)結(jié)構(gòu); ( 3 )數(shù)據(jù)流; ( 4 )數(shù)據(jù)存儲; ( 5 )處理過程五個部分。其中數(shù)據(jù)項是數(shù)據(jù)的最小組成單位, 若干個數(shù)據(jù)項可以組成一個數(shù)據(jù)結(jié)構(gòu)。 數(shù)據(jù)字典通過對數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)的定義來描述數(shù)據(jù)流和數(shù)據(jù)存儲 的邏輯內(nèi)容。數(shù)據(jù)字典的作用:數(shù)據(jù)字典是關(guān)于數(shù)據(jù)庫中數(shù)據(jù)的描述, 在需求分析階段建立, 是下一步進行概念設(shè)計的基礎(chǔ),并在數(shù)據(jù)庫設(shè)計過程中不斷修改、充實、完蓋。 6.設(shè)某商業(yè)集團數(shù)據(jù)庫中有三個實體集。一是
38、“商店”實體集,屬性有商店編號、商店名、地址等;二是“商品”實體集,屬性有商品號、商品名、規(guī)格、單價等;三是“職工”實體集,屬性有職工編號、姓名、性別、業(yè)績等。 商店與商品間存在“銷售”聯(lián)系,每個商店可銷售多種商品,每種商品也可放在多個商店銷售,每個商店銷售一種商品,有月銷售量;商店與職工間存在著“聘用”聯(lián)系,每個商店有許多職工,每個職工只能在一個商店工作,商店聘用職工有聘期和月薪。 (1) 試畫出E-R圖,并在圖上注明屬性、聯(lián)系的類型。 (2) 將E-R圖轉(zhuǎn)換成關(guān)系模型,并注明主鍵和外鍵。 第八章 數(shù)據(jù)庫編程 1. SQL的集合處理方式與宿主語言單記錄處理
39、方式之間如何協(xié)調(diào)? 由于 SQL 語句處理的是記錄集合 ,而宿主語言語句一次只能處理一個記錄 ,因此需要用游標 (cousor)機制 ,把集合操作轉(zhuǎn)換成單記錄處理方式 2. SQL有兩種使用方式:__ 交互式SQL_______和___嵌入式SQL _______。 3. SQL語句嵌入在C語言程序中時,必須加上前綴標識__EXEC SQL___和結(jié)束標志__ END EXEC_______。 4. 有關(guān)嵌入式SQL的敘述,不正確的是( B ) A.宿主語言是指C一類高級程序設(shè)計語言 B.宿主語言是指SQL語言 C.在程序中要區(qū)分SQL語句和宿主語言語句 D.S
40、QL有交互式和嵌入式兩種使用方式 5. 嵌入式SQL實現(xiàn)時,采用預處理方式是( C ) A.把SQL語句和主語言語句區(qū)分開來 B.為SQL語句加前綴標識和結(jié)束標志 C.識別出SQL語句,并處理成函數(shù)調(diào)用形式 D.把SQL語句編譯成二進制碼 6. 允許在嵌入的SQL語句中,引用宿主語言的程序變量,在引用時( C ) A.直接引用 B.這些變量前必須加符號“*” C.這些變量前必須加符號“:” D.這些變量前必須加符號“&” 7. 如果嵌入的SELECT語句的查詢結(jié)果肯定是單元組,那么嵌入時( C ) A.肯定不涉及游標機制 B.
41、必須使用游標機制 C.是否使用游標,由應用程序員決定 D.是否使用游標,與DBMS有關(guān) 第九章 關(guān)系查詢優(yōu)化 1.為什么要對關(guān)系代數(shù)表達式進行優(yōu)化?有哪三條啟發(fā)式規(guī)則?對優(yōu)化起什么作用? 答:關(guān)系代數(shù)表達式由關(guān)系代數(shù)操作組合而成。操作中,笛卡爾積和連接操作最費時。如果直接按表達式書寫的順序執(zhí)行,必將花費很多時間,并生成大量的中間結(jié)果,效率較低。 如果在執(zhí)行前,由 DBMS 的查詢子系統(tǒng)先對關(guān)系代數(shù)表達式進行優(yōu)化,盡可能先執(zhí)行選擇和投影操作,則進行笛卡爾積或連接時可以減少中間結(jié)果,并 節(jié)省時間。 優(yōu)化工作是由DBMS 做的,用戶在寫關(guān)系代數(shù)表達式時不必關(guān)心優(yōu)化一事,仍以簡練的形
42、式書寫。 3 條啟發(fā)式優(yōu)化規(guī)則是:盡可能早地執(zhí)行選擇運算,盡可能早地執(zhí)行投影運算,把笛卡爾積與附近的一連串選擇和投影合并起來做。 使用這 3 條啟發(fā)式優(yōu)化規(guī)則,可以使計算時盡可能減少中間關(guān)系的數(shù)據(jù)量。 2.假設(shè)教學數(shù)據(jù)庫中有3個關(guān)系: S(S#,SNAME,AGE,SEX) C(C#,CNAME,TEACHER) SC(S#,C#,GRADE) 其中:學生關(guān)系S的屬性分別表示:學號、姓名、年齡、性別 課程關(guān)系C的屬性分別表示:課程號、課程名、任課教師 選修關(guān)系SC的屬性分別表示:學號、課程號、分數(shù) 用戶有一查詢語句:檢索女同學所選修的課程的課程
43、名和任課教師。 (1) 試寫出該查詢的關(guān)系代數(shù)表達式。 (2) 畫出查詢表達式的語法樹。 (3) 使用啟發(fā)式優(yōu)化算法,對關(guān)系代數(shù)語法樹進行優(yōu)化,畫出優(yōu)化后的語法樹。 解:① 關(guān)系代數(shù)表達式為: πCNAME , TEACHER (σ SEX=’ F’ (S? SC? C? T)) 上述的關(guān)系代數(shù)表達式為: πCNAME , TEACHER (σ SEX=’ F’(πL (σS.S#=SC.S#∧ SC.C#=C.C# ((S×SC)× C)))) 此處 L 為 S、 SC、 C 中全部屬性(公共屬性只取一次) 。 ②上述關(guān)系代數(shù)表達式的語法樹如圖 2.2 所示。
44、 ③ 上述的關(guān)系代數(shù)表達式為: 優(yōu)化后的語法樹如圖 2.3 所示。 第十章 數(shù)據(jù)庫恢復技術(shù) 1. 數(shù)據(jù)庫恢復的重要依據(jù)是( D ) A.數(shù)據(jù)庫管理員 B.數(shù)據(jù)字典 C.文檔 D.事務(wù)日志 2. 事務(wù)(transaction)是一個( C ) A.程序 B.進程 C.操作序列 D.完整性規(guī)則 3. 一個事務(wù)的執(zhí)行,要么全部完成,要么全部不做,一個事務(wù)中對數(shù)據(jù)庫的所有操作都是一個不可分割的操作序列,這是事務(wù)的( A
45、) A. 原子性 B. 一致性 C. 獨立性 D. 持久性 4. 在具有檢查點的故障恢復技術(shù)中,下面哪個事務(wù)不需要REDO( A )。 (A)、 T1 (B)、T2 (C)、T3 (D)、 T4 Tc檢查點 Tf系統(tǒng)故障 T1 T2 T3 T4 5. “檢查點機制”的主要思想是什么?COMMIT語句與檢查點時刻的操作如何協(xié)調(diào)? 答: “檢查點機制”的主要思想是在檢查點時刻才真正做到把對 DB 的修改寫到磁盤。 在 DB 恢復時, 只有那些在最后一個檢查點到故障點之間還在執(zhí)行的事務(wù)才需要恢復。
46、 事務(wù)在 COMMIT 時,事務(wù)對 DB 的更新已提交,但對 DB 的更新可能還留在內(nèi)存的緩沖區(qū), 在檢查點時刻才真正寫到磁盤。 因此事務(wù)的真正結(jié)束是在 COMMIT 后還要加上遇到檢查點時刻。 6. 什么是UNDO操作和REDO操作?為什么要這樣設(shè)置? 答: undo 操作是反向掃描日志文件,撤銷對數(shù)據(jù)庫的更新操作,使數(shù)據(jù)庫恢復到更新前的狀態(tài);Redo 操作正向掃描日志文件, 重新做一次更新, 使數(shù)據(jù)庫恢復到更新后的狀態(tài)。 第十一章 并發(fā)控制 1. 如果有n個事務(wù)串行調(diào)度,那么不同的有效調(diào)度有( D ) A.n2 B.2n C.4n
47、 D.n! 2. 在事務(wù)依賴圖中,如果兩個事務(wù)的依賴關(guān)系形成一個循環(huán),那么就會( B ) A.出現(xiàn)活鎖現(xiàn)象 B.出現(xiàn)死鎖現(xiàn)象 C.事務(wù)執(zhí)行成功 D.事務(wù)執(zhí)行失敗 3. 如果事務(wù)T獲得了數(shù)據(jù)項Q上的排他鎖,則T對Q( C ) A.只能讀不能寫 B.只能寫不能讀 C.既可讀又可寫 D.不能讀也不能寫 4. 設(shè)事務(wù)T1和T2對數(shù)據(jù)庫中的數(shù)據(jù)A進行操作,可能有如下幾種情況,請問哪一種不會發(fā)生沖突操作( D ) A. T1正在寫A,T2要讀A B. T1正在寫A,T2也要寫A C. T1
48、正在讀A,T2要寫A D. T1正在讀A,T2也要讀A 5. 試敘述“串行調(diào)度”與“可串行化調(diào)度”的區(qū)別。 串行調(diào)度是多個事務(wù)按照一定的次序依次執(zhí)行; 在某一時刻只有一個事務(wù)在執(zhí)行。而可串行化調(diào)度是并發(fā)調(diào)度中的一個概念。 在并發(fā)調(diào)度中, 某一時刻有多個事務(wù)同時被處理。 如果某事務(wù)集的一個并發(fā)調(diào)度的結(jié)果與某個串行調(diào)度等價, 則稱此并發(fā)調(diào)度是是可串行化調(diào)度。 6. 假設(shè)某航班某日有余票50張,甲預定10張,乙預定20張,現(xiàn)按如下順序進行調(diào)度,請問會出現(xiàn)什么問題?如何來實現(xiàn)并發(fā)控制? 答:按上述順序進行調(diào)度,則最后的余票為 30,顯然不正確了。因為正確答案應該為 20,這種錯誤屬于“丟失修改” ,即把甲寫回的數(shù)據(jù)丟失了。應該采用封鎖機制實現(xiàn)并發(fā)控制,具體修改如下: 甲 已 LOCK – X(A) 讀 A = 50 LOCK – X (A) A = A – 10 等待 寫回 A = 40 等待 COMMIT 等待 UNLOCK (A) 獲得 讀 A = 4- A = A – 20 寫回A = 20 COMMIT UNLOCK (A) 25 試題yu教育
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 川渝旅游日記成都重慶城市介紹推薦景點美食推薦
- XX國有企業(yè)黨委書記個人述責述廉報告及2025年重點工作計劃
- 世界濕地日濕地的含義及價值
- 20XX年春節(jié)節(jié)后復工安全生產(chǎn)培訓人到場心到崗
- 大唐女子圖鑒唐朝服飾之美器物之美繪畫之美生活之美
- 節(jié)后開工第一課輕松掌握各要點節(jié)后常見的八大危險
- 廈門城市旅游介紹廈門景點介紹廈門美食展示
- 節(jié)后開工第一課復工復產(chǎn)十注意節(jié)后復工十檢查
- 傳統(tǒng)文化百善孝為先孝道培訓
- 深圳城市旅游介紹景點推薦美食探索
- 節(jié)后復工安全生產(chǎn)培訓勿忘安全本心人人講安全個個會應急
- 預防性維修管理
- 常見閥門類型及特點
- 設(shè)備預防性維修
- 2.乳化液泵工理論考試試題含答案