




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上第1章 緒論2 使用數(shù)據(jù)庫系統(tǒng)有什么好處?答:使用數(shù)據(jù)庫系統(tǒng)的優(yōu)點(diǎn)是很多的,既便于數(shù)據(jù)的集中管理,控制數(shù)據(jù)冗余,提高數(shù)據(jù)的利用率和一致性,又有利于應(yīng)用程序的開發(fā)和維護(hù)。6 數(shù)據(jù)庫管理系統(tǒng)的主要功能有哪些?答:( l )數(shù)據(jù)庫定義功能; ( 2 )數(shù)據(jù)存取功能; ( 3 )數(shù)據(jù)庫運(yùn)行管理; ( 4 )數(shù)據(jù)庫的建立和維護(hù)功能。8 試述概念模型的作用。答:概念模型實際上是現(xiàn)實世界到機(jī)器世界的一個中間層次。概念模型用于信息世界的建模,是現(xiàn)實世界到信息世界的第一層抽象,是數(shù)據(jù)庫設(shè)計人員進(jìn)行數(shù)據(jù)庫設(shè)計的有力工具,也是數(shù)據(jù)庫設(shè)計人員和用戶之間進(jìn)行交流的語言。12 學(xué)校中有若干系,每
2、個系有若干班級和教研室,每個教研室有若干教員,其中有的教授和副教授每人各帶若干研究生;每個班有若干學(xué)生,每個學(xué)生選修若干課程,每門課可由若干學(xué)生選修。請用 E 一 R 圖畫出此學(xué)校的概念模型。答: 實體間聯(lián)系如下圖所示,聯(lián)系選修有一個屬性:成績。各實體需要有屬性說明,需要畫出各實體的圖(帶屬性)或在下圖中直接添加實體的屬性,比如:學(xué)生的屬性包括學(xué)號、姓名、性別、身高、聯(lián)系方式等,此略。 13 某工廠生產(chǎn)若干產(chǎn)品,每種產(chǎn)品由不同的零件組成,有的零件可用在不同的產(chǎn)品上。這些零件由不同的原材料制成,不同零件所用的材料可以相同。這些零件按所屬的不同產(chǎn)品分別放在倉庫中,原材料按照類別放在若干倉庫中。請用
3、 E 一 R 圖畫出此工廠產(chǎn)品、零件、材料、倉庫的概念模型。答:各實體需要有屬性,此略。 聯(lián)系組成、制造、 儲存、存放都有屬性:數(shù)量。 20 試述數(shù)據(jù)庫系統(tǒng)三級模式結(jié)構(gòu),這種結(jié)構(gòu)的優(yōu)點(diǎn)是什么?答:數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)由外模式、模式和內(nèi)模式組成。 外模式,亦稱子模式或用戶模式,是數(shù)據(jù)庫用戶(包括應(yīng)用程序員和最終用戶)能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示。模式,亦稱邏輯模式,是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是所有用戶的公共數(shù)據(jù)視圖。模式描述的是數(shù)據(jù)的全局邏輯結(jié)構(gòu)。外模式涉及的是數(shù)據(jù)的局部邏輯結(jié)構(gòu),通常是模式的子集。內(nèi)
4、模式,亦稱存儲模式,是數(shù)據(jù)在數(shù)據(jù)庫系統(tǒng)內(nèi)部的表示,即對數(shù)據(jù)的物理結(jié)構(gòu)和存儲方式的描述。數(shù)據(jù)庫系統(tǒng)的三級模式是對數(shù)據(jù)的三個抽象級別,它把數(shù)據(jù)的具體組織留給 DBMs 管理,使用戶能邏輯抽象地處理數(shù)據(jù),而不必關(guān)心數(shù)據(jù)在計算機(jī)中的表示和存儲。數(shù)據(jù)庫系統(tǒng)在這三級模式之間提供了兩層映像:外模式模式映像和模式內(nèi)模式映像,這兩層映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)能夠具有較高的邏輯獨(dú)立性和物理獨(dú)立性。22 什么叫數(shù)據(jù)與程序的物理獨(dú)立性?什么叫數(shù)據(jù)與程序的邏輯獨(dú)立性?為什么數(shù)據(jù)庫系統(tǒng)具有數(shù)據(jù)與程序的獨(dú)立性?答:數(shù)據(jù)與程序的邏輯獨(dú)立性是指用戶的的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨(dú)立的。數(shù)據(jù)與程序的物理獨(dú)立性是指用戶的的
5、應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨(dú)立的。當(dāng)模式改變時(例如增加新的關(guān)系、新的屬性、改變屬性的數(shù)據(jù)類型等),由數(shù)據(jù)庫管理員對各個外模式模式的映像做相應(yīng)改變,可以使外模式保持不變。應(yīng)用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應(yīng)用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨(dú)立性,簡稱數(shù)據(jù)的邏輯獨(dú)立性。當(dāng)數(shù)據(jù)庫的存儲結(jié)構(gòu)改變了,由數(shù)據(jù)庫管理員對模式內(nèi)模式映像做相應(yīng)改變,可以使模式保持不變,從而應(yīng)用程序也不必改變,保證了數(shù)據(jù)與程序的物理獨(dú)立性,簡稱數(shù)據(jù)的物理獨(dú)立性。數(shù)據(jù)庫管理系統(tǒng)在三級模式之間提供的兩層映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)能夠具有較高的邏輯獨(dú)立性和物理獨(dú)立性。 第2章 關(guān)系數(shù)據(jù)庫4 試述關(guān)系模型的
6、完整性規(guī)則。在參照完整性中,為什么外部碼屬性的值也可以為空?什么情況下才可以為空?答:實體完整性規(guī)則是指若屬性A是基本關(guān)系R的主屬性,則屬性A不能取空值。若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼,它與基本關(guān)系S的主碼Ks相對應(yīng)(基本關(guān)系R和S不一定是不同的關(guān)系),則對于R中每個元組在F上的值必須為:或者取空值(F的每個屬性值均為空值);或者等于S中某個元組的主碼值。即屬性F本身不是主屬性,則可以取空值,否則不能取空值。5設(shè)有一個SPJ數(shù)據(jù)庫,包括S,P,J,SPJ四個關(guān)系模式:1)求供應(yīng)工程J1零件的供應(yīng)商號碼SNO:Sno(Sno=J1(SPJ))2)求供應(yīng)工程J1零件P1的供應(yīng)商號碼SNO:
7、Sno(Sno=J1Pno=P1(SPJ)3)求供應(yīng)工程J1零件為紅色的供應(yīng)商號碼SNO:Sno(Pno=P1 (COLOR=紅 (P)SPJ))4)求沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號JNO:Jno(SPJ)- JNO(city=天津Color=紅 (SSPJP)5)求至少用了供應(yīng)商S1所供應(yīng)的全部零件的工程號JNO:Jno,Pno(SPJ)÷ Pno(Sno=S1 (SPJ)6試述等值連接與自然連接的區(qū)別和聯(lián)系。答: 連接運(yùn)算符是“=”的連接運(yùn)算稱為等值連接。它是從關(guān)系R與S的廣義笛卡爾積中選取A,B屬性值相等的那些元組。自然連接是一種特殊的等值連接,它要求兩個關(guān)系中進(jìn)行比
8、較的分量必須是相同的屬性組,并且在結(jié)果中把重復(fù)的屬性列去掉。第3章 關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL4.針對上題中建立的 4 個表試用 SQL 語言完成第二章習(xí)題 5 中的查詢。 ( l )求供應(yīng)工程 Jl 零件的供應(yīng)商號碼 SNO ;SELECT DIST SNO FROM SPJ WHERE JNO=J1 ( 2 )求供應(yīng)工程 Jl 零件 Pl 的供應(yīng)商號碼 SNO ; SELECT DIST SNO FROM SPJ WHERE JNO='J1' AND PNO='P1'( 3 )求供應(yīng)工程 Jl 零件為紅色的供應(yīng)商號碼 SNO ; SELECT SNO FROM
9、 SPJ,P WHERE JNO='J1' AND SPJ.PNO=P.PNO AND COLOR='紅'( 4 )求沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號 JNO ;SELECT JNO FROM J WHERE JNO NOT IN (SELECT JNO FROM SPJ,P,S WHERE S.CITY='天津' AND COLOR='紅' AND S.SNO=SPJ.SNO AND P.PNO=SPJ.PNO)?;騍ELECT JNO FROM J WHERE NOT EXISITS (SELECT * FROM SP
10、J,P,S WHERE S.CITY='天津' AND COLOR='紅' AND S.SNO=SPJ.SNO AND P.PNO=SPJ.PNO AND SPJ.JNO=J.JNO)。( 5 )求至少用了供應(yīng)商 Sl 所供應(yīng)的全部零件的工程號 JNO ;SELECT JNO FROM SPJ X WHERE NOT EXISITS(SELECT * FROM SPJ Y WHERE SNO='S1' AND NOT EXISITS(SELECT * FROM SPJ Z WHERE Z.JNO=X.JNO AND Z.PNO=Y.PNO)5針對
11、習(xí)題3中的四個表試用SQL語言完成以下各項操作:(1)找出所有供應(yīng)商的姓名和所在城市。 SELECT SNAME,CITY FROM S(2)找出所有零件的名稱、顏色、重量。SELECT PNAME,COLOR,WEIGHT FROM P(3)找出使用供應(yīng)商S1所供應(yīng)零件的工程號碼。 SELECT DIST JNO FROM SPJ WHERE SNO='S1'(4)找出工程項目J2使用的各種零件的名稱及其數(shù)量。SELECT PNAME,QTY FROM SPJ,P WHERE P.PNO=SPJ.PNO AND SPJ.JNO='J2'(5)找出上海廠商供應(yīng)的
12、所有零件號碼。SELECT PNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND CITY='上海'(6) 找出使用上海產(chǎn)的零件的工程名稱。SELECT JNAME FROM SPJ,S,JWHERE S.SNO=SPJ.SNO AND S.CITY='上海' AND J.JNO=SPJ.JNO(7)找出沒有使用天津產(chǎn)的零件的工程號碼。類似上題中的第(4) 小題。注意考慮可能某個工程沒有使用任何零件,它的JNO不在SPJ中出現(xiàn),所以不能從SPJ中查詢該題想要的結(jié)果。SELECT DISTINCT JNO FROM J WHERE JNO
13、NOT IN (SELECT DIST JNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND S.CITY='天津')或 SELECT DISTINCT JNO FROM J WHERE NOT EXISITS (SELECT * FROM SPJ,S ,J WHERE S.SNO=SPJ.SNO AND S.CITY='天津' AND SPJ.JNO=.JNO) (8)把全部紅色零件的顏色改成藍(lán)色。UPDATE P SET COLOR='藍(lán)' WHERE COLOR='紅'(9)由S5供給J4的零件P6改
14、為由S3供應(yīng)。 UPDATE SPJ SET SNO='S3' WHERE SNO='S5' AND JNO='J4' AND PNO='P6'(10)從供應(yīng)商關(guān)系中刪除供應(yīng)商號是S2的記錄,并從供應(yīng)情況關(guān)系中刪除相應(yīng)的記錄。 A、DELETE FROM SPJ WHERE SNO=S2 B、DELETE FROM S WHERE SNO=S2(11)請將(S2,J6,P4,200)插入供應(yīng)情況關(guān)系。 INSERT INTO SPJ VALUES(S2,J6,P4,200)6 什么是基本表?什么是視圖?兩者的區(qū)別和聯(lián)系是什么?答
15、基本表是本身獨(dú)立存在的表,在 SQL 中一個關(guān)系就對應(yīng)一個表。視圖是從一個或幾個基本表導(dǎo)出的表。視圖本身不獨(dú)立存儲在數(shù)據(jù)庫中,是一個虛表。即數(shù)據(jù)庫中只存放視圖的定義而不存放視圖對應(yīng)的數(shù)據(jù),這些數(shù)據(jù)仍存放在導(dǎo)出視圖的基本表中。視圖在概念上與基本表等同,用戶可以如同基本表那樣使用視圖,可以在視圖上再定義視圖。 7 試述視圖的優(yōu)點(diǎn)。答 ( l )視圖能夠簡化用戶的操作; ( 2 )視圖使用戶能以多種角度看待同一數(shù)據(jù); ( 3 )視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨(dú)立性; ( 4 )視圖能夠?qū)C(jī)密數(shù)據(jù)提供安全保護(hù)。(5)適當(dāng)?shù)睦靡晥D可以更清晰的表達(dá)查詢。11請為三建工程項目建立一個供應(yīng)情況的視圖,
16、包括供應(yīng)商代碼(SNO)、零件代碼(PNO)、供應(yīng)數(shù)量(QTY)。CREATE VIEW VSP AS SELECT SNO,PNO,QTY FROM SPJ,J WHERE SPJ.JNO=J.JNO AND J.JNAME='三建'針對該視圖VSP完成下列查詢:(1)找出三建工程項目使用的各種零件代碼及其數(shù)量。SELECT DIST PNO,QTY FROM VSP(2)找出供應(yīng)商S1的供應(yīng)情況。SELECT DIST * FROM VSP WHERE SNO='S1'第4章 數(shù)據(jù)庫安全性1 什么是數(shù)據(jù)庫的安全性?答:數(shù)據(jù)庫的安全性是指保護(hù)數(shù)據(jù)庫以防止不合法
17、的使用所造成的數(shù)據(jù)泄露、更改或破壞。5 試述實現(xiàn)數(shù)據(jù)庫安全性控制的常用方法和技術(shù)。答:實現(xiàn)數(shù)據(jù)庫安全性控制的常用方法和技術(shù)有:( l )用戶標(biāo)識和鑒別 ( 2 )存取控制。( 3 )視圖機(jī)制。( 4 )審計。( 5 )數(shù)據(jù)加密。6 什么是數(shù)據(jù)庫中的自主存取控制方法和強(qiáng)制存取控制方法? 答:自主存取控制方法:定義各個用戶對不同數(shù)據(jù)對象的存取權(quán)限。當(dāng)用戶對數(shù)據(jù)庫訪問時首先檢查用戶的存取權(quán)限。防止不合法用戶對數(shù)據(jù)庫的存取。強(qiáng)制存取控制方法:每一個數(shù)據(jù)對象被(強(qiáng)制地)標(biāo)以一定的密級,每一個用戶也被(強(qiáng)制地)授予某一個級別的許可證。系統(tǒng)規(guī)定只有具有某一許可證級別的用戶才能存取某一個密級的數(shù)據(jù)對象。8用S
18、QL的GRANT 和REVOKE語句(加上視圖機(jī)制)完成以下授權(quán)定義或存取控制功能:( a )用戶王明對兩個表有SELECT 權(quán)力。GRANT SELECT ON 職工,部門TO 王明( b )用戶李勇對兩個表有INSERT 和DELETE 權(quán)力。GRANT INSERT,DELETE ON 職工,部門TO 李勇( c ) 每個職工只對自己的記錄有SELECT 權(quán)力。GRANT SELECT ON 職工WHEN USER()=NAMETO ALL;( d )用戶劉星對職工表有SELECT 權(quán)力,對工資字段具有更新權(quán)力。GRANT SELECT,UPDATE(工資) ON 職工TO 劉星 ( e
19、 )用戶張新具有修改這兩個表的結(jié)構(gòu)的權(quán)力。GRANT ALTER TABLE ON 職工,部門TO 張新; ( f )用戶周平具有對兩個表所有權(quán)力(讀,插,改,刪數(shù)據(jù)),并具有給其他用戶授權(quán)的權(quán)力。GRANT ALL PRIVILIGES ON 職工,部門TO 周平WITH GRANT OPTION;( g )用戶楊蘭具有從每個部門職工中SELECT 最高工資、最低工資、平均工資的權(quán)力,他不能查看每個人的工資。CREATE VIEW 部門工資 ASSELECT 部門.名稱,MAX(工資),MIN(工資),AVG(工資)FROM 職工,部門WHERE 職工.部門號=部門.部門號GROUP BY
20、職工.部門號GRANT SELECT ON 部門工資TO 楊蘭;9 把習(xí)題8 中(1)-(7)的每一種情況,撤銷各用戶所授予的權(quán)力(1) REVOKE SELECT ON 職工,部門 FROM 王明;(2) REVOKE INSERT , DELETE ON 職工,部門 FROM 李勇;(3) REOVKE SELECT ON 職工WHEN USER ( ) =NAMEFROM ALI ;(4) REVOKE SELECT , UPDATE ON 職工FROM 劉星;(5) REVOKE ALTER TABLE ON 職工,部門FROM 張新;(6) REVOKE ALL PRIVILIGES
21、 ON 職工,部門FROM 周平;(7) REVOKE SELECT ON 部門工資FROM 楊蘭;DROP VIEW 部門工資;13 什么是數(shù)據(jù)庫的審計功能,為什么要提供審計功能?答: 審計功能是指DBMS 的審計模塊在用戶對數(shù)據(jù)庫執(zhí)行操作的同時把所有操作自動記錄到系統(tǒng)的審計日志中。因為任何系統(tǒng)的安全保護(hù)措施都不是完美無缺的,蓄意盜竊破壞數(shù)據(jù)的人總可能存在。利用數(shù)據(jù)庫的審計功能,DBA 可以根據(jù)審計跟蹤的信息,重現(xiàn)導(dǎo)致數(shù)據(jù)庫現(xiàn)有狀況的一系列事件,找出非法存取數(shù)據(jù)的人、時間和內(nèi)容等。14 統(tǒng)計數(shù)據(jù)庫中存在何種特殊的安全性問題?答: 統(tǒng)計數(shù)據(jù)庫允許用戶查詢聚集類型的信息,如合計、平均值、最大值、
22、最小值等,不允許查詢單個記錄信息。但是,人們可以從合法的查詢中推導(dǎo)出不合法的信息,即可能存在隱蔽的信息通道,這是統(tǒng)計數(shù)據(jù)庫要研究和解決的特殊的安全性問題。第5章 數(shù)據(jù)庫完整性1什么是數(shù)據(jù)庫的完整性?答:數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確性和相容性。2 數(shù)據(jù)庫的完整性概念與數(shù)據(jù)庫的安全性概念有什么區(qū)別和聯(lián)系?答:數(shù)據(jù)的完整性和安全性是兩個不同的概念,但是有一定的聯(lián)系。前者是為了防止數(shù)據(jù)庫中存在不符合語義的數(shù)據(jù),防止錯誤信息的輸入和輸出,即所謂垃圾進(jìn)垃圾出( Garba : e In Garba : e out )所造成的無效操作和錯誤結(jié)果。后者是保護(hù)數(shù)據(jù)庫防止惡意的破壞和非法的存取。也就是說,安全性措
23、施的防范對象是非法用戶和非法操作,完整性措施的防范對象是不合語義的數(shù)據(jù)。3 什么是數(shù)據(jù)庫的完整性約束條件?可分為哪幾類?答完整性約束條件是指數(shù)據(jù)庫中的數(shù)據(jù)應(yīng)該滿足的語義約束條件。一般可以分為六類:靜態(tài)列級約束、靜態(tài)元組約束、靜態(tài)關(guān)系約束、動態(tài)列級約束、動態(tài)元組約束、動態(tài)關(guān)系約束。靜態(tài)列級約束是對一個列的取值域的說明,包括以下幾個方面: ( l )對數(shù)據(jù)類型的約束,包括數(shù)據(jù)的類型、長度、單位、精度等; ( 2 )對數(shù)據(jù)格式的約束; ( 3 )對取值范圍或取值集合的約束; ( 4 )對空值的約束; ( 5 )其他約束。靜態(tài)元組約束就是規(guī)定組成一個元組的各個列之間的約束關(guān)系,靜態(tài)元組約束只局限在單個
24、元組上。靜態(tài)關(guān)系約束是在一個關(guān)系的各個元組之間或者若干關(guān)系之間常常存在各種聯(lián)系或約束。常見的靜態(tài)關(guān)系約束有: ( l )實體完整性約束; ( 2 )參照完整性約束; ( 3 )函數(shù)依賴約束。動態(tài)列級約束是修改列定義或列值時應(yīng)滿足的約束條件,包括下面兩方面: ( l )修改列定義時的約束; ( 2 )修改列值時的約束。動態(tài)元組約束是指修改某個元組的值時需要參照其舊值,并且新舊值之間需要滿足某種約束條件。動態(tài)關(guān)系約束是加在關(guān)系變化前后狀態(tài)上的限制條件,例如事務(wù)一致性、原子性等約束條件。4 . DBMS 的完整性控制機(jī)制應(yīng)具有哪些功能?答:DBMS 的完整性控制機(jī)制應(yīng)具有三個方面的功能: ( l )
25、定義功能,即提供定義完整性約束條件的機(jī)制; ( 2 )檢查功能,即檢查用戶發(fā)出的操作請求是否違背了完整性約束條件;( 3 )違約反應(yīng):如果發(fā)現(xiàn)用戶的操作請求使數(shù)據(jù)違背了完整性約束條件,則采取一定的動作來保證數(shù)據(jù)的完整性。 5 . RDBMS 在實現(xiàn)參照完整性時需要考慮哪些方面?答 RDBMs 在實現(xiàn)參照完整性時需要考慮以下幾個方面: ( l )外碼是否可以接受空值。 ( 2 )冊 l 除被參照關(guān)系的元組時的考慮,這時系統(tǒng)可能采取的作法有三種: l )級聯(lián)刪除( CASCADES ) ; 2 )受限刪除( RESTRICTED ) ; 3 )置空值刪除( NULLIFIES )。 ( 3 )在參
26、照關(guān)系中插入元組時的問題,這時系統(tǒng)可能采取的作法有: l )受限插入; 2 )遞歸插入。 ( 4 )修改關(guān)系中主碼的問題。一般是不能用 UPDATE 語句修改關(guān)系主碼的。如果需要修改主碼值,只能先刪除該元組,然后再把具有新主碼值的元組插入到關(guān)系中。如果允許修改主碼,首先要保證主碼的惟一性和非空,否則拒絕修改。然后要區(qū)分是參照關(guān)系還是被參照關(guān)系。6 假設(shè)有下面兩個關(guān)系模式:職工(職工號,姓名,年齡,職務(wù),工資,部門號),其中職工號為主碼;部門(部門號,名稱,經(jīng)理名,電話),其中部門號為主碼。用 sQL 語言定義這兩個關(guān)系模式,要求在模式中完成以下完整性約束條件的定義:定義每個模式的主碼;定義參照
27、完整性;定義職工年齡不得超過 60 歲。答CREATE TABLE DEPT (Deptno NUMBER(2), Deptname 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 ( Aage<=60), Job VARCHAR(9), Sal NUMBER(7,2), Dept
28、no NUMBER(2), CONSTRAINT FK_DEPTNO FOREIGN KEY(Deptno) REFFERENCES DEPT(Deptno);7 關(guān)系系統(tǒng)中,當(dāng)操作違反實體完整性、參照完整性和用戶定義的完整性約束條件時,一般是如何分別進(jìn)行處理的?答:對于違反實體完整性和用戶定義的完整性的操作一般都采用拒絕執(zhí)行的方式進(jìn)行處理。而對于違反參照完整性的操作,并不都是簡單地拒絕執(zhí)行,有時要根據(jù)應(yīng)用語義執(zhí)行一些附加的操作,以保證數(shù)據(jù)庫的正確性。第6章 關(guān)系數(shù)據(jù)庫理論1 理解并給出下列術(shù)語的定義:函數(shù)依賴、部分函數(shù)依賴、完全函數(shù)依賴、傳遞依賴、候選碼、主碼、外碼、全碼(All 一key
29、)、1 NF 、ZNF 、3NF 、BcNF 、多值依賴、4NF 。定義1:設(shè)R(U)是屬性集U上的關(guān)系模式。X,Y是屬性集U的子集。若對于R(U)的任意一個可能的關(guān)系r,r中不可能存在兩個元組在X上的屬性值相等,而在Y上的屬性值不等,則稱X函數(shù)確定Y或Y函數(shù)依賴于X,記作XàY。(即只要X上的屬性值相等,Y上的值一定相等。)術(shù)語和記號:XàY,但Y不是X的子集,則稱XàY是非平凡的函數(shù)依賴。若不特別聲明,總是討論非平凡的函數(shù)依賴。XàY,但Y是X的子集,則稱XàY是平凡的函數(shù)依賴。若XàY,則X叫做決定因素(Determinant)
30、。若XàY,YàX,則記作XßàY。若Y不函數(shù)依賴于X,則記作X à Y。定義2:在R(U)中,如果 XàY,并且對于X的任何一個真子集X,都有X à Y,則稱Y對X完全函數(shù)依賴 若XàY,但Y不完全函數(shù)依賴于X,則稱Y對X部分函數(shù)依賴定義3:若關(guān)系模式R的每一個分量是不可再分的數(shù)據(jù)項,則關(guān)系模式R屬于第一范式(1NF)。定義4:若關(guān)系模式R1NF,且每一個非主屬性完全函數(shù)依賴于碼,則關(guān)系模式R2NF 。(即1NF消除了非主屬性對碼的部分函數(shù)依賴則成為2NF)。定義5:關(guān)系模式R<U,F(xiàn)> 中若不存在這
31、樣的碼X、屬性組Y及非主屬性Z(Z不是Y的子集)使得XàY,Y à X,Y à Z成立,則稱R<U,F(xiàn)>3NF。定義6:關(guān)系模式R<U,F(xiàn)>1NF 。若XàY且Y不是X的子集時,X必含有碼,則R<U,F(xiàn)>BCNF。定義7:關(guān)系模式R<U,F(xiàn)>1NF,如果對于R的每個非平凡多值依賴XààY(Y不是X的子集,Z=U-X-Y不為空),X都含有碼,則稱R<U,F(xiàn)>4NF。2建立一個關(guān)于系、學(xué)生、班級、學(xué)會等諸信息的關(guān)系數(shù)據(jù)庫。學(xué)生:學(xué)號、姓名、出生年月、系名、班號、宿舍區(qū)。班級:班號
32、、專業(yè)名、系名、人數(shù)、入校年份。系:系名、系號、系辦公地點(diǎn)、人數(shù)。學(xué)會:學(xué)會名、成立年份、辦公地點(diǎn)、人數(shù)。 語義如下:一個系有若干專業(yè),每個專業(yè)每年只招一個班,每個班有若干學(xué)生。一個系的學(xué)生住在同一宿舍區(qū)。每個學(xué)生可參加若干學(xué)會,每個學(xué)會有若干學(xué)生。學(xué)生參加某學(xué)會有一個入會年份。 請給出關(guān)系模式,寫出每個關(guān)系模式的極小函數(shù)依賴集,指出是否存在傳遞函數(shù)依賴,對于函數(shù)依賴左部是多屬性的情況討論函數(shù)依賴是完全函數(shù)依賴,還是部分函數(shù)依賴。指出各關(guān)系模式的候選碼、外部碼,有沒有全碼存在?解:(1)關(guān)系模式如下: 學(xué)生:S(Sno,Sname,Sbirth,Dept,Class,Rno) 班級:C(Cla
33、ss,Pname,Dept,Cnum,Cyear) 系:D(Dept,Dno,Office,Dnum) 學(xué)會:M(Mname,Myear,Maddr,Mnum) (2)每個關(guān)系模式的最小函數(shù)依賴集如下: A、學(xué)生S (Sno,Sname,Sbirth,Dept,Class,Rno) 的最小函數(shù)依賴集如下:SnoàSname,SnoàSbirth,SnoàClass,ClassàDept,DEPTàRno 傳遞依賴如下:由于SnoàDept,而DeptàSno ,DeptàRno(宿舍區(qū))所以Sno與Rno之間存在著
34、傳遞函數(shù)依賴。 由于ClassàDept,Dept à Class,DeptàRno 所以Class與Rno之間存在著傳遞函數(shù)依賴。 由于SnoàClass,ClassàSno,ClassàDept 所以Sno與Dept之間存在著傳遞函數(shù)依賴。 B、班級C(Class,Pname,Dept,Cnum,Cyear)的最小函數(shù)依賴集如下: ClassàPname,ClassàCnum,ClassàCyear,PnameàDept. 由于ClassàPname,PnameàClas
35、s,PnameàDept 所以C1ass與Dept之間存在著傳遞函數(shù)依賴。 C、系D(Dept,Dno,Office,Dnum)的最小函數(shù)依賴集如下: DeptàDno,DnoàDept,DnoàOffice,DnoàDnum 根據(jù)上述函數(shù)依賴可知,Dept與Office,Dept與Dnum之間不存在傳遞依賴。 D、學(xué)會M(Mname,Myear,Maddr,Mnum)的最小函數(shù)依賴集如下: MnameàMyear,MnameàMaddr,MnameàMnum 該模式不存在傳遞依賴。 (3)各關(guān)系模式的候選碼、外部
36、碼,全碼如下: A、學(xué)生S候選碼:Sno;外部碼:Dept、Class;無全碼 B、班級C候選碼:Class;外部碼:Dept;無全碼 C、系D候選碼:Dept或Dno;無外部碼;無全碼 D、學(xué)會M候選碼:Mname;無外部碼;無全碼3 試由amstrong 公理系統(tǒng)推導(dǎo)出下面三條推理規(guī)則:( l )合并規(guī)則:若X 一Z , X 一Y ,則有X 一YZ ( 2 )偽傳遞規(guī)則:由x 一Y ,明吟z 有翔一z ( 3 )分解規(guī)則:x 一Y , zcy ,有x 一z 證明( l )已知X 一Z ,由增廣律知喲,YZ ,又因為X 一Y ,可得獄一X 卜)YZ ,最后根據(jù)傳遞律得x 一YZ 。( 2 )
37、已知X 一Y ,據(jù)增廣律得翔一Wy ,因為陰幾)Z ,所以X 林協(xié)明,Z ,通過傳遞律可知翔一Z 。( 3 )已知zcy ,根據(jù)自反律知、吟z ,又因為x 一Y ,所以由傳遞律可得x 一Z 。5 試舉出3 個多值依賴的實例。答:(1)關(guān)系模式MSC ( M , S , C )中,M 表示專業(yè),S 表示學(xué)生,C 表示該專業(yè)的必修課。假設(shè)每個專業(yè)有多個學(xué)生,有一組必修課。設(shè)同專業(yè)內(nèi)所有學(xué)生選修的必修課相同,實例關(guān)系如下。按照語義對于M 的每一個值M i , s 有一個完整的集合與之對應(yīng)而不問C 取何值,所以M 一一S 。由于C 與S 的完全對稱性,必然有M 一一C 成立。(2)關(guān)系模式ISA (
38、I , S , A )中,I 表示學(xué)生興趣小組,S 表示學(xué)生,A 表示某興趣小組的活動項目。假設(shè)每個興趣小組有多個學(xué)生,有若干活動項目。每個學(xué)生必須參加所在興趣小組的所有活動項目,每個活動項目要求該興趣小組的所有學(xué)生參加。按照語義有I 一一S , I 一一A 成立。(3)關(guān)系模式RDP ( R , D , P )中,R 表示醫(yī)院的病房,D 表示責(zé)任醫(yī)務(wù)人員,P 表示病人。假設(shè)每個病房住有多個病人,有多個責(zé)任醫(yī)務(wù)人員負(fù)責(zé)醫(yī)治和護(hù)理該病房的所有病人。12下面的結(jié)論哪些是正確的? 哪些是錯誤的? 對于錯誤的請給一個反例說明之。(1)任何一個二目關(guān)系是屬于3NF。答:正確。因為關(guān)系模式中只有兩個屬性,
39、所以無傳遞。(2)任何一個二目關(guān)系是屬于BCNF.答:正確。按BCNF的定義,若XàY,且Y不是X的子集時,每個決定因素都包含碼,對于二目關(guān)系決定因素必然包含碼。詳細(xì)證明如下:(任何二元關(guān)系模式必定是BCNF)。證明:設(shè)R為一個二目關(guān)系R(A1,A2),則屬性A1和A2之間可能存在以下幾種依賴關(guān)系:A、A1àA2,但A2àA1,則關(guān)系R的碼為A1,決定因素都包含碼,所以,R是BCNF。B、A1àA2,A2àA1,則關(guān)系R的碼為A2,所以決定因素都包含碼,R是BCNF。包含碼。R是BCNF。C、R的碼為(A1,A2)(即A1 àA2,A
40、2 àA1),決定因素都(3)任何一個二目關(guān)系是屬于4NF.答:正確。因為只有兩個屬性,所以無非平凡的多值依賴。第7章 數(shù)據(jù)庫設(shè)計1試述數(shù)據(jù)庫設(shè)計過程。答:這里只概要列出數(shù)據(jù)庫設(shè)計過程的六個階段: ( l )需求分析; ( 2 )概念結(jié)構(gòu)設(shè)計; ( 3 )邏輯結(jié)構(gòu)設(shè)計; ( 4 )數(shù)據(jù)庫物理設(shè)計; ( 5 )數(shù)據(jù)庫實施; ( 6 )數(shù)據(jù)庫運(yùn)行和維護(hù)。這是一個完整的實際數(shù)據(jù)庫及其應(yīng)用系統(tǒng)的設(shè)計過程。不僅包括設(shè)計數(shù)據(jù)庫本身,還包括數(shù)據(jù)庫的實施、運(yùn)行和維護(hù)。設(shè)計一個完善的數(shù)據(jù)庫應(yīng)用系統(tǒng)往往是上述六個階段的不斷反復(fù)。2 試述數(shù)據(jù)庫設(shè)計過程各個階段上的設(shè)計描述。答:各階段的設(shè)計要點(diǎn)如下: (
41、l )需求分析:準(zhǔn)確了解與分析用戶需求(包括數(shù)據(jù)與處理)。 ( 2 )概念結(jié)構(gòu)設(shè)計:通過對用戶需求進(jìn)行綜合、歸納與抽象,形成一個獨(dú)立于具體 DBMS 的概念模型。 ( 3 )邏輯結(jié)構(gòu)設(shè)計:將概念結(jié)構(gòu)轉(zhuǎn)換為某個 DBMS 所支持的數(shù)據(jù)模型,并對其進(jìn)行優(yōu)化。 ( 4 )數(shù)據(jù)庫物理設(shè)計:為邏輯數(shù)據(jù)模型選取一個最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)(包括存儲結(jié)構(gòu)和存取方法)。 ( 5 )數(shù)據(jù)庫實施:設(shè)計人員運(yùn)用 DBMS 提供的數(shù)據(jù)語言、工具及宿主語言,根據(jù)邏輯設(shè)計和物理設(shè)計的結(jié)果建立數(shù)據(jù)庫,編制與調(diào)試應(yīng)用程序,組織數(shù)據(jù)入庫,并進(jìn)行試運(yùn)行。 ( 6 )數(shù)據(jù)庫運(yùn)行和維護(hù):在數(shù)據(jù)庫系統(tǒng)運(yùn)行過程中對其進(jìn)行評價、調(diào)整與修改
42、。3 試述數(shù)據(jù)庫設(shè)計過程中結(jié)構(gòu)設(shè)計部分形成的數(shù)據(jù)庫模式。答:數(shù)據(jù)庫結(jié)構(gòu)設(shè)計的不同階段形成數(shù)據(jù)庫的各級模式,即: ( l )在概念設(shè)計階段形成獨(dú)立于機(jī)器特點(diǎn),獨(dú)立于各個 DBMS 產(chǎn)品的概念模式,在本篇中就是 E 一 R 圖; ( 2 )在邏輯設(shè)計階段將 E 一 R 圖轉(zhuǎn)換成具體的數(shù)據(jù)庫產(chǎn)品支持的數(shù)據(jù)模型,如關(guān)系模型,形成數(shù)據(jù)庫邏輯模式,然后在基本表的基礎(chǔ)上再建立必要的視圖 ( Vi 娜),形成數(shù)據(jù)的外模式; ( 3 )在物理設(shè)計階段,根據(jù) DBMS 特點(diǎn)和處理的需要,進(jìn)行物理存儲安排,建立索引,形成數(shù)據(jù)庫內(nèi)模式。4 試述數(shù)據(jù)庫設(shè)計的特點(diǎn)。答:數(shù)據(jù)庫設(shè)計既是一項涉及多學(xué)科的綜合性技術(shù)又是一項龐大
43、的工程項目。其主要特點(diǎn)有: ( l )數(shù)據(jù)庫建設(shè)是硬件、軟件和干件(技術(shù)與管理的界面)的結(jié)合。 ( 2 )從軟件設(shè)計的技術(shù)角度看,數(shù)據(jù)庫設(shè)計應(yīng)該和應(yīng)用系統(tǒng)設(shè)計相結(jié)合,也就是說,整個設(shè)計過程中要把結(jié)構(gòu)(數(shù)據(jù))設(shè)計和行為(處理)設(shè)計密切結(jié)合起來。5 需求分析階段的設(shè)計目標(biāo)是什么?調(diào)查的內(nèi)容是什么?答:需求分析階段的設(shè)計目標(biāo)是通過詳細(xì)調(diào)查現(xiàn)實世界要處理的對象(組織、部門、企業(yè)等),充分了解原系統(tǒng)(手工系統(tǒng)或計算機(jī)系統(tǒng))工作概況,明確用戶的各種需求,然后在此基礎(chǔ)上確定新系統(tǒng)的功能。調(diào)查的內(nèi)容是“數(shù)據(jù)夕和“處理”,即獲得用戶對數(shù)據(jù)庫的如下要求: ( l )信息要求,指用戶需要從數(shù)據(jù)庫中獲得信息的內(nèi)容與性
44、質(zhì),由信息要求可以導(dǎo)出數(shù)據(jù)要求,即在數(shù)據(jù)庫中需要存儲哪些數(shù)據(jù); ( 2 )處理要求,指用戶要完成什么處理功能,對處理的響應(yīng)時間有什么要求,處理方式是批處理還是聯(lián)機(jī)處理; ( 3 )安全性與完整性要求。6 數(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ù)的描述,在需
45、求分析階段建立,是下一步進(jìn)行概念設(shè)計的基礎(chǔ),并在數(shù)據(jù)庫設(shè)計過程中不斷修改、充實、完蓋。7 什么是數(shù)據(jù)庫的概念結(jié)構(gòu)?試述其特點(diǎn)和設(shè)計策略。答:概念結(jié)構(gòu)是信息世界的結(jié)構(gòu),即概念模型,其主要特點(diǎn)是: ( l )能真實、充分地反映現(xiàn)實世界,包括事物和事物之間的聯(lián)系,能滿足用戶對數(shù)據(jù)的處理要求,是對現(xiàn)實世界的一個真實模型; ( 2 )易于理解,從而可以用它和不熟悉計算機(jī)的用戶交換意見,用戶的積極參與是數(shù)據(jù)庫設(shè)計成功的關(guān)鍵; ( 3 )易于更改,當(dāng)應(yīng)用環(huán)境和應(yīng)用要求改變時,容易對概念模型修改和擴(kuò)充; ( 4 )易于向關(guān)系、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換。概念結(jié)構(gòu)的設(shè)計策略通常有四種: l )自頂向下,即首先
46、定義全局概念結(jié)構(gòu)的框架,然后逐步細(xì)化; 2 )自底向上,即首先定義各局部應(yīng)用的概念結(jié)構(gòu),然后將它們集成起來,得到全局概念結(jié)構(gòu); 3 )逐步擴(kuò)張,首先定義最重要的核心概念結(jié)構(gòu),然后向外擴(kuò)充,以滾雪球的方式逐步生成其他概念結(jié)構(gòu),直至總體概念結(jié)構(gòu); 4 )混合策略,即將自頂向下和自底向上相結(jié)合,用自頂向下策略設(shè)計一個全局概念結(jié)構(gòu)的框架,以它為骨架集成由自底向上策略中設(shè)計的各局部概念結(jié)構(gòu)。8 什么叫數(shù)據(jù)抽象?試舉例說明。答:數(shù)據(jù)抽象是對實際的人、物、事和概念進(jìn)行人為處理,抽取所關(guān)心的共同特性,忽略非本質(zhì)的細(xì)節(jié),并把這些特性用各種概念精確地加以描述,這些概念組成了某種模型。如“分類夕這種抽象是:定義某一
47、類概念作為現(xiàn)實世界中一組對象的類型。這些對象具有某些共同的特性和行為。它抽象了對象值和型之間的, ' i 5 member of ”的語義。在 E 一 R 模型中,實體型就是這種抽象。例如在學(xué)校環(huán)境中,李英是老師,表示李英是教師類型中的一員,則教師是實體型,李英是教師實體型中的一個實體值,具有教師共同的特性和行為:在某個系某個專業(yè)教學(xué),講授某些課程,從事某個方向的科研。 9 試述數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計的重要性和設(shè)計步驟。答:重要性:數(shù)據(jù)庫概念設(shè)計是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵,將在需求分析階段所得到的應(yīng)用需求首先抽象為概念結(jié)構(gòu),以此作為各種數(shù)據(jù)模型的共同基礎(chǔ),從而能更好地、更準(zhǔn)確地用某一 DBMS
48、 實現(xiàn)這些需求。設(shè)計步驟:概念結(jié)構(gòu)的設(shè)計方法有多種,其中最經(jīng)常采用的策略是自底向上方法,該方法的設(shè)計步驟通常分為兩步:第 1 步是抽象數(shù)據(jù)并設(shè)計局部視圖,第 2 步是集成局部視圖,得到全局的概念結(jié)構(gòu)。 10 為什么要視圖集成?視圖集成的方法是什么?答:在對數(shù)據(jù)庫系統(tǒng)進(jìn)行概念結(jié)構(gòu)設(shè)計時一般采用自底向上的設(shè)計方法,把繁雜的大系統(tǒng)分解子系統(tǒng)。首先設(shè)計各個子系統(tǒng)的局部視圖,然后通過視圖集成的方式將各子系統(tǒng)有機(jī)地融合起來,綜合成一個系統(tǒng)的總視圖。這樣,設(shè)計清晰,由簡到繁。由于數(shù)據(jù)庫系統(tǒng)是從整體角度看待和描述數(shù)據(jù)的,因此數(shù)據(jù)不再面向某個應(yīng)用而是整個系統(tǒng)。因此必須進(jìn)行視圖集成,使得數(shù)據(jù)庫能被全系統(tǒng)的多個用戶
49、、多個應(yīng)用共享使用。一般說來,視圖集成可以有兩種方式: ( l )多個分 E 一 R 圖一次集成; ( 2 )逐步集成,用累加的方式一次集成兩個分 E 一 R 圖。無論采用哪種方式,每次集成局部 E 一 R 圖時都需要分兩步走: ( l )合并,解決各分 E 一 R 圖之間的沖突,將各分 E 一 R 圖合并起來生成初步 E 一 R 圖; ( 2 )修改和重構(gòu),消除不必要的冗余,生成基本 E 一 R 圖。 11 什么是數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計?試述其設(shè)計步驟。答:數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計就是把概念結(jié)構(gòu)設(shè)計階段設(shè)計好的基本 E 一 R 圖轉(zhuǎn)換為與選用的 DBMS 產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)。設(shè)計
50、步驟為 : ( l )將概念結(jié)構(gòu)轉(zhuǎn)換為一般的關(guān)系、網(wǎng)狀、層次模型; ( 2 )將轉(zhuǎn)換來的關(guān)系、網(wǎng)狀、層次模型向特定 DBMS 支持下的數(shù)據(jù)模型轉(zhuǎn)換; ( 3 )對數(shù)據(jù)模型進(jìn)行優(yōu)化。14 規(guī)范化理論對數(shù)據(jù)庫設(shè)計有什么指導(dǎo)意義?答:規(guī)范化理論為數(shù)據(jù)庫設(shè)計人員判斷關(guān)系模式的優(yōu)劣提供了理論標(biāo)準(zhǔn),可用以指導(dǎo)關(guān)系數(shù)據(jù)模型的優(yōu)化,用來預(yù)測模式可能出現(xiàn)的問題,為設(shè)計人員提供了自動產(chǎn)生各種模式的算法工具,使數(shù)據(jù)庫設(shè)計工作有了嚴(yán)格的理論基礎(chǔ)。 15 試述數(shù)據(jù)庫物理設(shè)計的內(nèi)容和步驟。答:數(shù)據(jù)庫在物理設(shè)備上的存儲結(jié)構(gòu)與存取方法稱為數(shù)據(jù)庫的物理結(jié)構(gòu),它依賴于給定的 DBMS 。為一個給定的邏輯數(shù)據(jù)模型選取一個最適合應(yīng)用
51、要求的物理結(jié)構(gòu),就是數(shù)據(jù)庫的物理設(shè)計的主要內(nèi)容。數(shù)據(jù)庫的物理設(shè)計步驟通常分為兩步: ( l )確定數(shù)據(jù)庫的物理結(jié)構(gòu),在關(guān)系數(shù)據(jù)庫中主要指存取方法和存儲結(jié)構(gòu); ( 2 )對物理結(jié)構(gòu)進(jìn)行評價,評價的重點(diǎn)是時間效率和空間效率。16 數(shù)據(jù)輸入在實施階段的重要性是什么?如何保證輸入數(shù)據(jù)的正確性?答:數(shù)據(jù)庫是用來對數(shù)據(jù)進(jìn)行存儲、管理與應(yīng)用的,因此在實施階段必須將原有系統(tǒng)中的歷史數(shù)據(jù)輸入到數(shù)據(jù)庫。數(shù)據(jù)量一般都很大,而且數(shù)據(jù)來源于部門中的各個不同的單位。數(shù)據(jù)的組織方式、結(jié)構(gòu)和格式都與新設(shè)計的數(shù)據(jù)庫系統(tǒng)有相當(dāng)?shù)牟罹?,組織數(shù)據(jù)錄入就要將各類源數(shù)據(jù)從各個局部應(yīng)用中抽取出來,分類轉(zhuǎn)換,最后綜合成符合新設(shè)計的數(shù)據(jù)庫結(jié)構(gòu)
52、的形式,輸入數(shù)據(jù)庫。因此這樣的數(shù)據(jù)轉(zhuǎn)換、組織入庫的工作是相當(dāng)費(fèi)力費(fèi)時的工作。特別是原系統(tǒng)是手工數(shù)據(jù)處理系統(tǒng)時,各類數(shù)據(jù)分散在各種不同的原始表格、憑證、單據(jù)之中,數(shù)據(jù)輸入工作量更大。保證輸入數(shù)據(jù)正確性的方法:為提高數(shù)據(jù)輸入工作的效率和質(zhì)量,應(yīng)該針對具體的應(yīng)用環(huán)境設(shè)計一個數(shù)據(jù)錄入子系統(tǒng),由計算機(jī)來完成數(shù)據(jù)入庫的任務(wù)。在源數(shù)據(jù)入庫之前要采用多種方法對它們進(jìn)行檢驗,以防止不正確的數(shù)據(jù)入庫。 17 什么是數(shù)據(jù)庫的再組織和重構(gòu)造?為什么要進(jìn)行數(shù)據(jù)庫的再組織和重構(gòu)造?答:數(shù)據(jù)庫的再組織是指:按原設(shè)計要求重新安排存儲位置、回收垃圾、減少指針鏈等,以提高系統(tǒng)性能。數(shù)據(jù)庫的重構(gòu)造則是指部分修改數(shù)據(jù)庫的模式和內(nèi)模式
53、,即修改原設(shè)計的邏輯和物理結(jié)構(gòu)。數(shù)據(jù)庫的再組織是不修改數(shù)據(jù)庫的模式和內(nèi)模式的。進(jìn)行數(shù)據(jù)庫的再組織和重構(gòu)造的原因:數(shù)據(jù)庫運(yùn)行一段時間后,由于記錄不斷增、刪、改,會使數(shù)據(jù)庫的物理存儲情況變壞,降低了數(shù)據(jù)的存取效率,數(shù)據(jù)庫性能下降,這時 DBA 就要對數(shù)據(jù)庫進(jìn)行重組織。 DBMS 一般都提供用于數(shù)據(jù)重組織的實用程序。數(shù)據(jù)庫應(yīng)用環(huán)境常常發(fā)生變化,如增加新的應(yīng)用或新的實體,取消了某些應(yīng)用,有的實體與實體間的聯(lián)系也發(fā)生了變化等,使原有的數(shù)據(jù)庫設(shè)計不能滿足新的需求,需要調(diào)整數(shù)據(jù)庫的模式和內(nèi)模式。這就要進(jìn)行數(shù)據(jù)庫重構(gòu)造。 18 現(xiàn)有一局部應(yīng)用,包括兩個實體:“出版社”和“作者”,這兩個實體是多對多的聯(lián)系,請讀
54、者自己設(shè)計適當(dāng)?shù)膶傩?,畫?E 一 R 圖,再將其轉(zhuǎn)換為關(guān)系模型(包括關(guān)系名、屬性名、碼和完整性約束條件)。答:關(guān)系模型為:作者(作者號,姓名,年齡,性別,電話,地址)出版社(出版社號,名稱,地址,聯(lián)系電話)出版(作者號,出版社號,書的數(shù)量)出版關(guān)系的主碼作者號,出版社號分別參照作者關(guān)系的主碼作者號和出版社關(guān)系的主碼出版社號。19 請設(shè)計一個圖書館數(shù)據(jù)庫,此數(shù)據(jù)庫中對每個借閱者保存讀者記錄,包括:讀者號,姓名,地址,性別,年齡,單位。對每本書存有:書號,書名,作者,出版社。對每本被借出的書存有讀者號、借出日期和應(yīng)還日期。要求:給出 E 一 R 圖,再將其轉(zhuǎn)換為關(guān)系模型。答 :E 一 R 圖為:
55、關(guān)系模型為:讀者(讀者號,姓名,地址,性別書(書號,書名,作者,出版社)借書(讀者號,書號,借出日期,年齡,單位)應(yīng)還日期)第9章 關(guān)系查詢處理和查詢優(yōu)化1 試述查詢優(yōu)化在關(guān)系數(shù)據(jù)庫系統(tǒng)中的重要性和可能性。答:重要性:關(guān)系系統(tǒng)的查詢優(yōu)化既是 RDBMS 實現(xiàn)的關(guān)鍵技術(shù)又是關(guān)系系統(tǒng)的優(yōu)點(diǎn)所在。它減輕了用戶選擇存取路徑的負(fù)擔(dān)。用戶只要提出“干什么”,不必指出“怎么干”。查詢優(yōu)化的優(yōu)點(diǎn)不僅在于用戶不必考慮如何最好地表達(dá)查詢以獲得較好的效率,而且在于系統(tǒng)可以比用戶程序的“優(yōu)化夕做得更好??赡苄裕哼@是因為: ( l )優(yōu)化器可以從數(shù)據(jù)字典中獲取許多統(tǒng)計信息,例如關(guān)系中的元組數(shù)、關(guān)系中每個屬性值的分布情況
56、、這些屬性上是否有索引、是什么索引( B 樹索引還是 HASH 索引或惟一索引或組合索引)等。優(yōu)化器可以根據(jù)這些信息選擇有效的執(zhí)行計劃,而用戶程序則難以獲得這些信息。 ( 2 )如果數(shù)據(jù)庫的物理統(tǒng)計信息改變了,系統(tǒng)可以自動對查詢進(jìn)行重新優(yōu)化以選擇相適應(yīng)的執(zhí)行計劃。在非關(guān)系系統(tǒng)中必須重寫程序,而重寫程序在實際應(yīng)用中往往是不太可能的。 ( 3 )優(yōu)化器可以考慮數(shù)十甚至數(shù)百種不同的執(zhí)行計劃,從中選出較優(yōu)的一個,而程序員一般只能考慮有限的幾種可能性。 ( 4 )優(yōu)化器中包括了很多復(fù)雜的優(yōu)化技術(shù),這些優(yōu)化技術(shù)往往只有最好的程序員才能掌握。系統(tǒng)的自動優(yōu)化相當(dāng)于使得所有人都擁有這些優(yōu)化技術(shù)。2 對學(xué)生一課程
57、數(shù)據(jù)庫有如下的查詢: SEI 王 CT Cn 即 ne FROM Student , Cou 拐 e , SC WHERE Student . Sno = SC . Sno AND SC . Cllo = Coll 拐 e . Cllo AND Stu 擊 nt . Sdept = ! 15 ! ; 此查詢要求信息系學(xué)生選修了的所有課程名稱。試畫出用關(guān)系代數(shù)表示的語法樹,并用關(guān)系代數(shù)表達(dá)式優(yōu)化算法對原始的語法樹進(jìn)行優(yōu)化處理,畫出優(yōu)化后的標(biāo)準(zhǔn)語法樹。答:3 試述查詢優(yōu)化的一般準(zhǔn)則。答:下面的優(yōu)化策略一般能提高查詢效率: ( l )選擇運(yùn)算應(yīng)盡可能先做; ( 2 )把投影運(yùn)算和選擇運(yùn)算同時進(jìn)行; ( 3 )把投影同其前或其后的雙目運(yùn)算結(jié)合起來執(zhí)行; ( 4 )把某些選擇同在它前面要執(zhí)行的笛卡兒積結(jié)合起來成為一個連接運(yùn)算; ( 5 )找出公共子表達(dá)式; ( 6 )選取合適的連接算法。4 試述查詢優(yōu)化的一般步驟。答:各個關(guān)系系統(tǒng)的優(yōu)化方法不盡相同,大致的步驟可以歸納如
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中學(xué)教師資格考試題及答案
- 2025年人工智能與大數(shù)據(jù)創(chuàng)業(yè)能力考試題及答案
- 2025年數(shù)學(xué)建模與應(yīng)用能力考試試卷及答案
- 2025年計算機(jī)網(wǎng)絡(luò)系統(tǒng)工程師考試試題及答案
- 2025年計算機(jī)應(yīng)用基礎(chǔ)考試卷及答案
- 2025年健康管理與促進(jìn)專業(yè)綜合考試試卷及答案
- 2025年財務(wù)審計的重要知識考試試題及答案
- 2025年兒童早期教育專業(yè)職業(yè)考試試卷及答案
- 2024年度浙江省護(hù)師類之主管護(hù)師考前沖刺模擬試卷A卷含答案
- 眼鏡行業(yè)人員培訓(xùn)資料
- 汽車吊塔吊防碰撞安全技術(shù)交底
- 多層線路板的層壓技術(shù)課件
- 交通運(yùn)輸安全管理整套教學(xué)課件
- 過敏性休克搶救與護(hù)理PPT課件(PPT 30頁)
- 強(qiáng)夯試夯的施工組織方案
- 福建高考名著《紅樓夢》填空題+答案
- 2019北師大版高中英語選擇性必修一單詞表
- 商標(biāo)法期末復(fù)習(xí)
- 材料力學(xué)計算試題(庫)完整
- 投資控股集團(tuán)有限公司安全生產(chǎn)責(zé)任制暫行辦法
- 智慧工廠解決方案—燈塔工廠引領(lǐng)制造業(yè)數(shù)字化轉(zhuǎn)型-白皮書
評論
0/150
提交評論