數(shù)據(jù)庫原理第五版習題答案_第1頁
數(shù)據(jù)庫原理第五版習題答案_第2頁
數(shù)據(jù)庫原理第五版習題答案_第3頁
數(shù)據(jù)庫原理第五版習題答案_第4頁
數(shù)據(jù)庫原理第五版習題答案_第5頁
已閱讀5頁,還剩31頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、第1章緒論1 .試述數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫系統(tǒng)、數(shù)據(jù)庫治理系統(tǒng)的概念.答:(l )數(shù)據(jù)(Data ):描述事物的符號記錄稱為數(shù)據(jù).數(shù)據(jù)的種類有數(shù)字、文字、圖形、 圖像、聲音、正文等.數(shù)據(jù)與其語義是不可分的.解析在現(xiàn)代計算機系統(tǒng)中數(shù)據(jù)的概念是 廣義的.早期的計算機系統(tǒng)主要用于科學計算,處理的數(shù)據(jù)是整數(shù)、實數(shù)、浮點數(shù)等傳統(tǒng) 數(shù)學中的數(shù)據(jù).現(xiàn)代計算機能存儲和處理的對象十分廣泛,表示這些對象的數(shù)據(jù)也越來越 復雜.數(shù)據(jù)與其語義是不可分的.500這個數(shù)字可以表示一件物品的價格是500元,也可以表示一個學術(shù)會議參加的人數(shù)有500人,還可以表示一袋奶粉重500克.(2 )數(shù)據(jù)庫(DataBase,簡稱DB ):

2、數(shù)據(jù)庫是長期儲存在計算機內(nèi)的、有組織的、可 共享的數(shù)據(jù)集合.數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存,具有較小的冗余 度、較高的數(shù)據(jù)獨立性和易擴展性,并可為各種用戶共享.(3 )數(shù)據(jù)庫系統(tǒng)(DataBas. Sytem ,簡稱DBS ):數(shù)據(jù)庫系統(tǒng)是指在計算機系統(tǒng)中 引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成,一般由數(shù)據(jù)庫、數(shù)據(jù)庫治理系統(tǒng)(及其開發(fā)工具)、應用系統(tǒng)、數(shù)據(jù)庫治理員構(gòu)成.解析數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫是兩個概念.數(shù)據(jù)庫系統(tǒng)是一個人一機系統(tǒng), 數(shù)據(jù)庫是數(shù)據(jù)庫系統(tǒng)的一個組成局部.但是在日常工作中人們常常把數(shù)據(jù)庫系統(tǒng)簡稱為數(shù)據(jù)庫.希望讀者能夠從人們講話或文章的上下文中區(qū)分“數(shù)據(jù)庫系統(tǒng)和“數(shù)據(jù)庫,不要引起混淆.

3、(4 )數(shù)據(jù)庫治理系統(tǒng)( DataBase Management sytem ,簡稱 DBMs ):數(shù)據(jù)庫治理系統(tǒng) 是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)治理軟件,用于科學地組織和存儲數(shù)據(jù)、高效地獲取和維護數(shù)據(jù).DBMS的主要功能包括數(shù)據(jù)定義功能、數(shù)據(jù)操縱功能、數(shù)據(jù)庫的運行治理功能、數(shù)據(jù)庫的建立和維護功能.解析DBMS是一個大型的復雜的軟件系統(tǒng),是計算機中的根底軟件.目前,專門研制 DBMS的廠商及其研制的 DBMS產(chǎn)品很多.著名的有美國 IBM 公司的DBZ關系數(shù)據(jù)庫治理系統(tǒng)和 IMS層次數(shù)據(jù)庫治理系統(tǒng)、美國 Oracle公司 的orade關系數(shù)據(jù)庫治理系統(tǒng)、s油ase公司的s油ase關系數(shù)據(jù)庫

4、治理系統(tǒng)、 美國微軟公司的SQL Serve ,關系數(shù)據(jù)庫治理系統(tǒng)等.3 .試述文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別和聯(lián)系.答:文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別是:文件系統(tǒng)面向某一應用程序,共享性差,冗余度大,數(shù) 據(jù)獨立性差,記錄內(nèi)有結(jié)構(gòu),整體無結(jié)構(gòu),由應用程序自己限制.數(shù)據(jù)庫系統(tǒng)面向現(xiàn)實世 界,共享性高,冗余度小,具有較高的物理獨立性和一定的邏輯獨立性,整體結(jié)構(gòu)化,用 數(shù)據(jù)模型描述,由數(shù)據(jù)庫治理系統(tǒng)提供數(shù)據(jù)的平安性、完整性、并發(fā)限制和恢復水平. 文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的聯(lián)系是:文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)都是計算機系統(tǒng)中治理數(shù)據(jù)的軟 件.解析文件系統(tǒng)是操作系統(tǒng)的重要組成局部;而DBMS是獨立于操作系統(tǒng)的軟件.但是DB

5、MS是在操作系統(tǒng)的根底上實現(xiàn)的;數(shù)據(jù)庫中數(shù)據(jù)的組織和存儲是通過操作系統(tǒng)中的文 件系統(tǒng)來實現(xiàn)的.5 .試述數(shù)據(jù)庫系統(tǒng)的特點.答:數(shù)據(jù)庫系統(tǒng)的主要特點有:(l )數(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ū)別.解析注意這里的“整體夕兩個字.在數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)不再針對某一個應用,而是面向全組織,具有整體的結(jié)構(gòu)化.不僅數(shù)據(jù)是結(jié)構(gòu)化的,而且數(shù)據(jù)的存取單位即一次可以存取數(shù)據(jù)的大小也很靈活,可以小到某一個數(shù)據(jù)項(如一個學生的姓名),大到一組記錄(成千上萬個學生記錄).而在文件系統(tǒng)中,數(shù)據(jù)的存取單位只有一個:記錄,如一個學生的完整記錄.(2 )數(shù)據(jù)的共

6、享性高,冗余度低,易擴充數(shù)據(jù)庫的數(shù)據(jù)不再面向某個應用而是面向整個 系統(tǒng),因此可以被多個用戶、多個應用以多種不同的語言共享使用.由于數(shù)據(jù)面向整個系 統(tǒng),是有結(jié)構(gòu)的數(shù)據(jù),不僅可以被多個應用共享使用,而且容易增加新的應用,這就使得 數(shù)據(jù)庫系統(tǒng)彈性大,易于擴充.解析數(shù)據(jù)共享可以大大減少數(shù)據(jù)冗余,節(jié)約存儲空間,同 時還能夠預防數(shù)據(jù)之間的不相容性與不一致性.所謂“數(shù)據(jù)面向某個應用是指數(shù)據(jù)結(jié)構(gòu) 是針對某個應用設計的, 只被這個應用程序或應用系統(tǒng)使用,可以說數(shù)據(jù)是某個應用的 “私有資源.所謂“彈性大是指系統(tǒng)容易擴充也容易收縮,即應用增加或減少時不必修改整 個數(shù)據(jù)庫的結(jié)構(gòu),只需做很少的改動.可以取整體數(shù)據(jù)的各種

7、子集用于不同的應用系統(tǒng), 當應用需求改變或增加時,只要重新選取不同的子集或加上一局部數(shù)據(jù),便可以滿足新的 需求.(3 )數(shù)據(jù)獨立性高數(shù)據(jù)獨立性包括數(shù)據(jù)的物理獨立性和數(shù)據(jù)的邏輯獨立性.數(shù)據(jù)庫治理 系統(tǒng)的模式結(jié)構(gòu)和二級映像功能保證了數(shù)據(jù)庫中的數(shù)據(jù)具有很高的物理獨立性和邏輯獨立 性.(4 )數(shù)據(jù)由DBMS統(tǒng)一治理和限制數(shù)據(jù)庫的共享是并發(fā)的共享,即多個用戶可以同時存 取數(shù)據(jù)庫中的數(shù)據(jù)甚至可以同時存取數(shù)據(jù)庫中同一個數(shù)據(jù).為此,DBMS必須提供統(tǒng)一的數(shù)據(jù)限制功能,包括數(shù)據(jù)的平安性保護、數(shù)據(jù)的完整性檢查、并發(fā)限制和數(shù)據(jù)庫恢復.解 析DBMS數(shù)據(jù)限制功能包括四個方面:數(shù)據(jù)的平安性保護:保護數(shù)據(jù)以預防不合法的使

8、用 造成的數(shù)據(jù)的泄密和破壞;數(shù)據(jù)的完整性檢查:將數(shù)據(jù)限制在有效的范圍內(nèi),或保證數(shù)據(jù) 之間滿足一定的關系;并發(fā)限制:對多用戶的并發(fā)操作加以限制和協(xié)調(diào),保證并發(fā)操作的 正確性;數(shù)據(jù)庫恢復:當計算機系統(tǒng)發(fā)生硬件故障、軟件故障,或者由于操作員的失誤以 及成心的破壞影響數(shù)據(jù)庫中數(shù)據(jù)的正確性,甚至造成數(shù)據(jù)庫局部或全部數(shù)據(jù)的喪失時,能 將數(shù)據(jù)庫從錯誤狀態(tài)恢復到某一的正確狀態(tài)(亦稱為完整狀態(tài)或一致狀態(tài)).下面可以得到“什么是數(shù)據(jù)庫的一個定義:數(shù)據(jù)庫是長期存儲在計算機內(nèi)有組織的大量的共享的數(shù)據(jù)集合,它可以供各種用戶共享,具有最小冗余度和較高的數(shù)據(jù)獨立性.DBMS在數(shù)據(jù)庫建立、運用和維護時對數(shù)據(jù)庫進行統(tǒng)一限制,以

9、保證數(shù)據(jù)的完整性、平安性,并在多用 戶同時使用數(shù)據(jù)庫時進行并發(fā)限制,在發(fā)生故障后對系統(tǒng)進行恢復.數(shù)據(jù)庫系統(tǒng)的出現(xiàn)使 信息系統(tǒng)從以加工數(shù)據(jù)的程序為中央轉(zhuǎn)向圍繞共享的數(shù)據(jù)庫為中央的新階段.6 .數(shù)據(jù)庫治理系統(tǒng)的主要功能有哪些 答:(l )數(shù)據(jù)庫定義功能;(2 )數(shù)據(jù)存取功能;(3 )數(shù)據(jù)庫運行治理;(4)數(shù)據(jù)庫的建立和維護功能.7 .試述數(shù)據(jù)模型的概念、數(shù)據(jù)模型的作用和數(shù)據(jù)模型的三個要素.答:數(shù)據(jù)模型是數(shù)據(jù)庫中用來對現(xiàn)實世界進行抽象的工具,是數(shù)據(jù)庫中用于提供信息表示和操 作手段的形式構(gòu)架.一般地講,數(shù)據(jù)模型是嚴格定義的概念的集合.這些概念精確描述了 系統(tǒng)的靜態(tài)特性、動態(tài)特性和完整性約束條件.因此數(shù)

10、據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作 和完整性約束三局部組成.(l )數(shù)據(jù)結(jié)構(gòu):是所研究的對象類型的集合,是對系統(tǒng)靜態(tài)特性的描述.2 數(shù)據(jù)操作:是指對數(shù)據(jù)庫中各種對象型的實例值允許進行的操作的集合, 包括操作及有關的操作規(guī)那么,是對系統(tǒng)動態(tài)特性的描述.3 數(shù)據(jù)的約束條件:是一組完整性規(guī)那么的集合.完整性規(guī)那么是給定的數(shù)據(jù)模型中數(shù)據(jù) 及其聯(lián)系所具有的制約和依存規(guī)那么,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化, 以保證數(shù)據(jù)的正確、有效、相容.解析數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)中最重要的概念之一.必須 通過?概論?的學習真正掌握數(shù)據(jù)模型的概念和作用.數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的根底. 任何一個 DBMS都以某一個數(shù)

11、據(jù)模型為根底, 或者說支持某一個數(shù)據(jù)模型. 數(shù)據(jù)庫系統(tǒng)中, 模型有不同的層次.根據(jù)模型應用的不同目的,可以將模型分成兩類或者說兩個層次:一 類是概念模型,是按用戶的觀點來對數(shù)據(jù)和信息建模,用于信息世界的建模,強調(diào)語義表 達水平,概念簡單清楚;另一類是數(shù)據(jù)模型,是按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,用于機 器世界,人們可以用它定義、操縱數(shù)據(jù)庫中的數(shù)據(jù),一般需要有嚴格的形式化定義和一組 嚴格定義了語法和語義的語言,并有一些規(guī)定和限制,便于在機器上實現(xiàn).9 .定義并解釋概念模型中以下術(shù)語:實體,實體型,實體集,屬性,碼,實體聯(lián)系圖E一 R圖 答:實體:客觀存在并可以相互區(qū)分的事物叫實體.實體型:具有相同屬

12、性的實體具有相同的 特征和性質(zhì),用實體名及其屬性名集合來抽象和刻畫同類實體,稱為實體型.實體集:同 型實體的集合稱為實體集.屬性:實體所具有的某一特性,一個實體可由假設干個屬性來刻 畫.碼:惟一標識實體的屬性集稱為碼.實體聯(lián)系圖 E R圖:提供了表示實體型、 屬性和聯(lián)系的方法:實體型:用矩形表示,矩形框內(nèi)寫明實體名;屬性:用橢圓形表示,并用無向邊將其與相應的實體連接起來;聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關實體連接起來,同時在無向邊旁標上聯(lián)系的類型 1 : 1 , 1 :n 或 m : n .11 .試給出一個實際部門的E R圖,要求有三個實體型,而且3個實體型之間有多對

13、多聯(lián)系.3個實體型之間的多對多聯(lián)系和三個實體型兩兩之間的三個多對多聯(lián)系等價嗎為什么 答:3個實體型之間的多對多聯(lián)系和3個實體型兩兩之間的 3個多對多聯(lián)系是不等價,由于它們擁有不同的語義.3個實體型兩兩之間的三個多對多聯(lián)系如以下列圖所示.13 .某工廠生產(chǎn)假設干產(chǎn)品,每種產(chǎn)品由不同的零件組成,有的零件可用在不同的產(chǎn)品上.這些零件由不同的原材料制成,不同零件所用的材料可以相同.這些零件按所屬的不同產(chǎn)品分別放在倉庫中,原材料根據(jù)類別放在假設干倉庫中.請用 E R圖畫出此工廠產(chǎn)品、 零件、材料、倉庫的概念模型.答:盧乩18 .試述關系模型的概念,定義并解釋以下術(shù)語:1 關系2 屬性3 域4 元組5 主

14、碼6 分量7 關系模式答:關系模型由關系數(shù)據(jù)結(jié)構(gòu)、關系操作集合和關系完整性約束三局部組成.在用戶觀點下,關系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表,它由行和列組成.1 關系:一個關系對應通常說的一張表;2 屬性:表中的一列即為一個屬性;3 域:屬性的取值范圍;4 元組:表中的一行即為一個元組;5 主碼:表中的某個屬性組,它可以惟一確定一個元組;6 分量:元組中的一個屬性值;7 關系模式:對關系的描述,一般表示為關系名屬性1 ,屬性2 ,屬性n 19 .試述關系數(shù)據(jù)庫的特點.答:關系數(shù)據(jù)模型具有以下優(yōu)點:1 關系模型與非關系模型不同,它是建立在嚴格的數(shù)學概念的根底上的.2 關系模型的概念單一,無論實體

15、還是實體之間的聯(lián)系都用關系表示,操作的對象和操作的結(jié)果都是關系,所以其數(shù)據(jù)結(jié)構(gòu)簡單、清楚,用戶易懂易用.3 關系模型的存取路徑對用戶透明,從而具有更高的數(shù)據(jù)獨立性、更好的平安保密性,也簡化了程序員的工作和數(shù)據(jù)庫開發(fā)建立的工作.當然,關系數(shù)據(jù)模型也有缺點,其中最主要 的缺點是,由于存取路徑對用戶透明,查詢效率往往不如非關系數(shù)據(jù)模型.因此為了提升 性能,必須對用戶的查詢請求進行優(yōu)化,增加了開發(fā)數(shù)據(jù)庫治理系統(tǒng)的難度.20 .試述數(shù)據(jù)庫系統(tǒng)三級模式結(jié)構(gòu),這種結(jié)構(gòu)的優(yōu)點是什么 答:數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)由外模式、模式和內(nèi)模式組成.參見書上圖1 . 29 外模式,亦稱子模式或用戶模式,是數(shù)據(jù)庫用戶包括應

16、用程序員和最終用戶能夠看見和使用的 局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應用有關的數(shù)據(jù) 的邏輯表示.模式,亦稱邏輯模式,是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是所 有用戶的公共數(shù)據(jù)視圖.模式描述的是數(shù)據(jù)的全局邏輯結(jié)構(gòu).外模式涉及的是數(shù)據(jù)的局部 邏輯結(jié)構(gòu),通常是模式的子集.內(nèi)模式,亦稱存儲模式,是數(shù)據(jù)在數(shù)據(jù)庫系統(tǒng)內(nèi)部的表示, 即對數(shù)據(jù)的物理結(jié)構(gòu)和存儲方式的描述.數(shù)據(jù)庫系統(tǒng)的三級模式是對數(shù)據(jù)的三個抽象級別, 它把數(shù)據(jù)的具體組織留給DBMs治理,使用戶能邏輯抽象地處理數(shù)據(jù),而不必關心數(shù)據(jù)在計算機中的表示和存儲.為了能夠在內(nèi)部實現(xiàn)這三個抽象層次的聯(lián)系和轉(zhuǎn)換,數(shù)據(jù)庫系統(tǒng)

17、在這三級模式之間提供了兩層映像:外模式/模式映像和模式/內(nèi)模式映像.正是這兩層 映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)能夠具有較高的邏輯獨立性和物理獨立性.21 .定義并解釋以下術(shù)語:模式、外模式、內(nèi)模式、DDL、 DML模式、外模式、內(nèi)模式,亦稱邏輯模式,是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是所有用戶的公共數(shù) 據(jù)視圖.模式描述的是數(shù)據(jù)的全局邏輯結(jié)構(gòu).外模式涉及的是數(shù)據(jù)的局部邏輯結(jié)構(gòu),通常 是模式的子集.內(nèi)模式,亦稱存儲模式,是數(shù)據(jù)在數(shù)據(jù)庫系統(tǒng)內(nèi)部的表示,即對數(shù)據(jù)的物 理結(jié)構(gòu)和存儲方式的描述.DDL :數(shù)據(jù)定義語言,用來定義數(shù)據(jù)庫模式、外模式、內(nèi)模式的語言. DML :數(shù)據(jù)操縱語言,用來對數(shù)據(jù)庫中

18、的數(shù)據(jù)進行查詢、插入、刪除和修改 的語句.22 .什么叫數(shù)據(jù)與程序的物理獨立性什么叫數(shù)據(jù)與程序的邏輯獨立性為什么數(shù)據(jù)庫系 統(tǒng)具有數(shù)據(jù)與程序的獨立性答:數(shù)據(jù)與程序的邏輯獨立性:當模式改變時例如增加新的關系、新的屬性、改變屬性的數(shù) 據(jù)類型等,由數(shù)據(jù)庫治理員對各個外模式/模式的映像做相應改變,可以使外模式保持不 變.應用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應用程序不必修改,保證了數(shù)據(jù)與程序的 邏輯獨立性,簡稱數(shù)據(jù)的邏輯獨立性.數(shù)據(jù)與程序的物理獨立性:當數(shù)據(jù)庫的存儲結(jié)構(gòu)改 變了,由數(shù)據(jù)庫治理員對模式/內(nèi)模式映像做相應改變,可以使模式保持不變,從而應用 程序也不必改變,保證了數(shù)據(jù)與程序的物理獨立性,簡稱數(shù)

19、據(jù)的物理獨立性.數(shù)據(jù)庫治理 系統(tǒng)在三級模式之間提供的兩層映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)能夠具有較高的邏輯獨立 性和物理獨立性.23 .試述數(shù)據(jù)庫系統(tǒng)的組成.答:數(shù)據(jù)庫系統(tǒng)一般由數(shù)據(jù)庫、數(shù)據(jù)庫治理系統(tǒng)及其開發(fā)工具、應用系統(tǒng)、數(shù)據(jù)庫治理員和用戶構(gòu)成.第2章關系數(shù)據(jù)庫1 .試述關系模型的三個組成局部.答:關系模型由關系數(shù)據(jù)結(jié)構(gòu)、關系操作集合和關系完整性約束三局部組成.4 .試述關系模型的完整性規(guī)那么.在參照完整性中,為什么外部碼屬性的值也可以為空 什么情況下才可以為空答:實體完整性規(guī)那么是指假設屬性A是根本關系R的主屬性,那么屬性 A不能取空值.假設屬性(或?qū)傩越M)F是根本關系 R的外碼,它與根本關系

20、 S的主碼Ks相對應(根本關系R 和S不一定是不同的關系),那么對于R中每個元組在 F上的值必須為:或者取空值 (F的每 個屬性值均為空值);或者等于S中某個元組的主碼值.即屬性F本身不是主屬性,那么可以取空值,否那么不能取空值.5 .設有一個SPJ數(shù)據(jù)庫,包括S, P, J, SPJ四個關系模式:1)求供應工程J1零件的供應商號 SNO:兀 Sno(rSno= J1 (SPJ)2)求供應工程 J1零件P1的供應商號 SNO:% Sno(T Sno= J1 A Pno= P1 (SPJ)3)求供應工程J1零件為紅色的供應商號 SNO:兀 Sno(T Pno= P1 ( b COLOR=紅(P)

21、 8 SPJ)4)求沒有使用天津供應商生產(chǎn)的紅色零件的工程號JNO :j Jno(SPJ)- % JNO (T city=天津A Color=紅(SSPJP)5)求至少用了供應商S1所供應的全部零件的工程號JNO:兀 Jno, Pno(SPJ) + 兀 Pno ( Sno= S1 (SPJ)6 .試述等值連接與自然連接的區(qū)別和聯(lián)系.答:連接運算符是“=的連接運算稱為等值連接.它是從關系R與S的廣義笛卡爾積中選取A, B屬性值相等的那些元組自然連接是一種特殊的等值連接,它要求兩個關系中進行比較的分量必須是相同的屬性組, 并且在結(jié)果中把重復的屬性列去掉.7 .關系代數(shù)的根本運算有哪些如何用這些根本

22、運算來表示其他運算 答:并、差、笛卡爾積、投影和選擇5種運算為根本的運算.其他3種運算,即交、連接和除,均可以用這 5種根本運算來表達.第3章 關系數(shù)據(jù)庫標準語言 SQL1 .試述sQL語言的特點.答:(l)綜合統(tǒng)一.sQL語言集數(shù)據(jù)定義語言 DDL、數(shù)據(jù)操縱語言 DML、數(shù)據(jù)限制語言 DCL 的功能于一體.(2)高度非過程化.用 sQL語言進行數(shù)據(jù)操作,只要提出“做什么,而無需指明“怎么做,因此無需了解存取路徑,存取路徑的選擇以及 sQL語句的操作過程由系統(tǒng)自動完成.(3)面向集合的操作方式.sQL語言采用集合操作方式,不僅操作對象、查找結(jié)果可以是元組的集合,而且一次插入、刪除、更新操作的對

23、象也可以是元組的集合.(4)以同一種語法結(jié)構(gòu)提供兩種使用方式.sQL語言既是自含式語言,又是嵌入式語言.作為自含式語言,它能夠獨立地用于聯(lián)機交互的使用方式;作為嵌入式語言,它能夠嵌入 到高級語言程序中,供程序員設計程序時使用.(5)語言簡捷,易學易用.2 .試述 sQL的定義功能.sQL的數(shù)據(jù)定義功能包括定義表、 定義視圖和定義索引. SQL語言使用 CREATE TABLE 語句建立根本表, ALTER TABLE 語句修改根本表定義, DROP TABLE 語句刪除根本 表;使用 CREATE INDEX 語句建立索引, DROP INDEX 語句刪除索引; 使用 CREATE VIEW

24、語句建立視圖, DROP VIEW 語句刪除視圖.3 .用sQL語句建立第二章習題 5中的4個表.答:對于 S 表:S ( SNO , SNAME , STATUS , CITY );建S表:CREATE TABLE S ( Sno C(2) UNIQUE , Sname C(6) , Status C(2) , City C(4);對于 P 表: P ( PNO , PNAME , COLOR , WEIGHT ); 建P表:CREATE TABLE P(Pno C(2) UNIQUE , Pname C(6) , COLOR C(2) , WEIGHT INT);對于 J 表:J ( JN

25、O , JNAME , CITY );建J表:CREATE TABLE J(Jno C(2) UNlQUE , JNAME C(8), CITY C(4)對于 sPJ 表:sPJ ( sNo , PNo , JNo , QTY );建 SPJ 表:SPJ(SNO,PNO,JNO,QTY)CREATE TABLE SPJ(Sno C(2) , Pno C(2) , JNO C(2) , QTY INT)4 .針對上題中建立的4個表試用sQL語言完成第二章習題5中的查詢.(l )求供應工程 Jl零件的供應商號 SNO ;SELECT DIST SNO FROM SPJ WHERE JNO J1 (

26、2 )求供應工程 Jl零件Pl的供應商號 SNO ;SELECT DIST SNO FROM SPJ WHERE JNO=J1 AND PNO=P1(3 )求供應工程 Jl零件為紅色的供應商號SNO ;SELECT SNO FROM SPJ,P WHERE JNO=J1 AND SPJ.PNO=P.PNO AND COLORS(4 )求沒有使用天津供應商生產(chǎn)的紅色零件的工程號JNO ;SELECT DIST JNO FROM SPJ WHERE JNO NOT IN (SELE JNO FROM SPJ,P,S WHERE S.CITY=天津AND COLOR=紅AND S.SNO=SPJ.S

27、NO AND P.PNO=SPJ.PNO).(5 )求至少用了供應商 Sl所供應的全部零件的工程號JNO ;由于VFP不允許子查詢嵌套太深,將查詢分為兩步A、查詢S1供應商供應的零件號SELECT DIST PNO FROM SPJ WHERE SNO=S1g果是(P1, P2)B、查詢哪一個工程既使用P1零件又使用P2零件.SELECT JNO FROM SPJ WHERE PNO=P1AND JNO IN (SELECT JNO FROM SPJ WHERE PNO=P2)5 .針對習題3中的四個表試用 SQL語言完成以下各項操作:(1)找出所有供應商的姓名和所在城市.SELECT SNA

28、ME,CITY FROM S(2)找出所有零件的名稱、顏色、重量.SELECT PNAME,COLOR,WEIGHT FROM P(3)找出使用供應商 S1所供應零件的工程號.SELECT DIST JNO FROM SPJ WHERE SNO=S1(4)找出工程工程J2使用的各種零件的名稱及其數(shù)量.SELECT PNAME,QTY FROM SPJ,PWHERE P.PNO=SPJ.PNO AND SPJ.JNO=J2(5)找出上海廠商供應的所有零件號.SELECT PNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND CITY= 上海(6)出使用上海產(chǎn)的零件的工程名

29、稱.SELECT JNAME FROM SPJ,S,JWHERE S.SNO=SPJ.SNO AND S.CITY= 上海AND J.JNO=SPJ.JNO(7)找出沒有使用天津產(chǎn)的零件的工程號.注意:SELECT DISP JNO FROM SPJ WHERE JNO NOT IN (SELECT DIST JNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND S.CITY= 天津)適用于 JNO 是唯一或不唯 一的情況.注意:SELECT DIST JNO FROM SPJ,S WHERE S.SNO=SPJ.SNO AND S.CITY 天 津適用于JNO是唯一的

30、情況(8)把全部紅色零件的顏色改成藍色.UPDATE P SET COLOR= 藍 WHERE COLOR= 紅(9)由S5供名J4的零件P6改為由S3供應.UPDATE SPJ SET SNO=S3 WHERE SNO=S5 AND JNO=J4 AND PNO=P6(10)從供應商關系中刪除供應商號是S2的記錄,并從供應情況關系中刪除相應的記錄.A、DELETEFROMS WHERE SNO=S2B、DELETEFROM SPJ WHERE SNO= S2(11)請將(S2, J6, P4, 200)插入供應情況關系.INSERT INTO SPJ VALUES (S2, J6, P4,

31、200)6 .什么是根本表什么是視圖答兩者的區(qū)別和聯(lián)系是什么根本表是本身獨立存在的表,在sQL中一個關系就對應一個表.視圖是從一個或幾個根本表導出的表.視圖本身不獨立存儲在數(shù)據(jù)庫中,是一個虛表.即數(shù)據(jù)庫中只存放視圖的定義而不存放視圖對應的數(shù)據(jù),這些數(shù)據(jù)仍存放在導出視圖的基 本表中.視圖在概念上與根本表等同,用戶可以如同根本表那樣使用視圖,可以在視圖上 再定義視圖.7 .試述視圖的優(yōu)點.答l 視圖能夠簡化用戶的操作;2 視圖使用戶能以多種角度看待同一數(shù)據(jù);3 視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨立性;4 視圖能夠?qū)C密數(shù)據(jù)提供平安保護.8 .所有的視圖是否都可以更新為什么答:不是.視圖是不實際

32、存儲數(shù)據(jù)的虛表,因此對視圖的更新,最終要轉(zhuǎn)換為對根本表的更新.由于有些視圖的更新不能惟一有意義地轉(zhuǎn)換成對相應根本表的更新,所以,并不是所有的 視圖都是可更新的.9 .哪類視圖是可以更新的哪類視圖是不可更新的各舉一例說明.答:根本表的行列子集視圖一般是可更新的.假設視圖的屬性來自集函數(shù)、表達式,那么該視 圖肯定是不可以更新的.10 .試述某個你熟悉的實際系統(tǒng)中對視圖更新的規(guī)定.答VFP11 .請為三建工程工程建立一個供應情況的視圖,包括供應商代碼SNO、零件代碼PNO、供應數(shù)量QTY.CREATE VIEW VSP AS SELECT SNO,PNO,QTY FROM SPJ,JWHERE SP

33、J.JNO=J.JNO AND J.JNAME=三建針對該視圖VSP完成以下查詢:1找出三建工程工程使用的各種零件代碼及其數(shù)量.SELECT DIST PNO,QTY FROM VSP2找出供應商S1的供應情況.SELECT DIST * FROM VSP WHERE SNO=S1第4章數(shù)據(jù)庫平安性1 .什么是數(shù)據(jù)庫的平安性答:數(shù)據(jù)庫的平安性是指保護數(shù)據(jù)庫以預防不合法的使用所造成的數(shù)據(jù)泄露、更改或破壞.2 .數(shù)據(jù)庫平安性和計算機系統(tǒng)的平安性有什么關系答:平安性問題不是數(shù)據(jù)庫系統(tǒng)所獨有的,所有計算機系統(tǒng)都有這個問題.只是在數(shù)據(jù)庫 系統(tǒng)中大量數(shù)據(jù)集中存放,而且為許多最終用戶直接共享,從而使平安性問

34、題更為突出. 系統(tǒng)平安保護舉措是否有效是數(shù)據(jù)庫系統(tǒng)的主要指標之一.數(shù)據(jù)庫的平安性和計算機系統(tǒng)的平安性,包括操作系統(tǒng)、網(wǎng)絡系統(tǒng)的平安性是緊密聯(lián)系、 相互支持的,3 .試述可信計算機系統(tǒng)評測標準的情況,試述TDI / TCSEC 標準的根本內(nèi)容.答:各個國家在計算機平安技術(shù)方面都建立了一套可信標準.目前各國引用或制定的一系列平安標準中,最重要的是美國國防部( DoD )正式公布的? DoD可信計算機系統(tǒng)評估 標準? (伽 sted Co 哪 uter system Evaluation criteria ,簡稱 TcsEc ,又稱桔皮書).(TDI / TCSEC標準是將TcsEc擴展到數(shù)據(jù)庫治理

35、系統(tǒng),即?可信計算機系統(tǒng)評估標準關于可信數(shù)據(jù)庫系統(tǒng)的解釋?(Tmsted Database Interpretation 簡稱TDI ,又稱紫皮書).在TDI中定義了數(shù)據(jù)庫治理系統(tǒng)的設計與實現(xiàn)中需滿足和用以進行平安性級別評估的標準.TDI與TcsEc 一樣,從平安策略、責任、保證和文檔四個方面來描述平安性級別劃分的指 標.每個方面又細分為假設干項.4 .試述TcsEC ( TDI )將系統(tǒng)平安級別劃分為 答:根據(jù)計算機系統(tǒng)對平安性各項指標的支持情況,(division )7 個等級,依次是 D、C ( CI , CZ 靠或可信程度逐漸增高.4組7個等級的根本內(nèi)容.TCSEC ( TDI )將系

36、統(tǒng)劃分為四組)、B ( BI , BZ , B3 )、A ( AI ),按系統(tǒng)可安分懾期J 51 f hi! Jh r.ri, fi.T域,IhlllUliri-結(jié)構(gòu)化保護I Xngiunl Fniiflrticvi)標汨安坐果甘 fSeciri93學相討W 配dj PtMnlkBi)自主平安鬢護 IPimIccIhbiiM 1保護Miiunul lYubvIxjEi這些平安級別之間具有一種偏序向下兼容的關系,即較高平安性級別提供的平安保護包含 較低級別的所有保護要求,同時提供更多或更完善的保護水平.各個等級的根本內(nèi)容為:D級D級是最低級別.一切不符合更高標準的系統(tǒng),統(tǒng)統(tǒng)歸于 D組.Cl級只提

37、供了非常初級的自主平安保護.能夠?qū)崿F(xiàn)對用戶和數(shù)據(jù)的別離,進行自主存取控制(DAC ),保護或限制用戶權(quán)限的傳播.C2級實際是平安產(chǎn)品的最低檔次,提供受控的存取保護, 即將Cl級的DAC進一步細化,以個人身份注冊負責,并實施審計和資源隔離.Bl級標記平安保護.對系統(tǒng)的數(shù)據(jù)加以標記,并對標記的主體和客體實施強制存取限制(MAC )以及審計等平安機制.B2級結(jié)構(gòu)化保護.建立形式化的平安策略模型并對系統(tǒng)內(nèi)的所有主體和客體實施DAC和MACoB3級平安域.該級的 TCB必須滿足訪問監(jiān)控器的要求,審計跟蹤水平更強,并提供系統(tǒng) 恢復過程.Al級驗證設計,即提供 B3級保護的同時給出系統(tǒng)的形式化設計說明和驗證

38、以確信各平安 保護真正實現(xiàn).5 .試述實現(xiàn)數(shù)據(jù)庫平安性限制的常用方法和技術(shù).答:實現(xiàn)數(shù)據(jù)庫平安性限制的常用方法和技術(shù)有:(l )用戶標識和鑒別:該方法由系統(tǒng)提供一定的方式讓用戶標識自己的名字或身份.每次 用戶要求進入系統(tǒng)時,由系統(tǒng)進行核對,通過鑒定后才提供系統(tǒng)的使用權(quán).(2 )存取限制:通過用戶權(quán)限定義和合法權(quán)檢查保證只有合法權(quán)限的用戶訪問數(shù)據(jù)庫,所 有未被授權(quán)的人員無法存取數(shù)據(jù).例如CZ級中的自主存取限制(DAC ) , Bl級中的強制存取限制(MAC ).(3 )視圖機制:為不同的用戶定義視圖,通過視圖機制把要保密的數(shù)據(jù)對無權(quán)存取的用戶 隱藏起來,從而自動地對數(shù)據(jù)提供一定程度的平安保護.(

39、4 )審計:建立審計日志,把用戶對數(shù)據(jù)庫的所有操作自動記錄下來放入審計日志中, DBA 可以利用審計跟蹤的信息,重現(xiàn)導致數(shù)據(jù)庫現(xiàn)有狀況的一系列事件,找出非法存取數(shù)據(jù)的 人、時間和內(nèi)容等.(5 )數(shù)據(jù)加密:對存儲和傳輸?shù)臄?shù)據(jù)進行加密處理,從而使得不知道解密算法的人無法獲 知數(shù)據(jù)的內(nèi)容.6 .什么是數(shù)據(jù)庫中的自主存取限制方法和強制存取限制方法 答:自主存取限制方法:定義各個用戶對不同數(shù)據(jù)對象的存取權(quán)限.當用戶對數(shù)據(jù)庫訪問時首先檢查用戶的存取權(quán)限.預防不合法用戶對數(shù)據(jù)庫的存取.強制存取限制方法:每一個數(shù)據(jù)對象被(強制地)標以一定的密級,每一個用戶也被(強 制地)授予某一個級別的許可證.系統(tǒng)規(guī)定只有具

40、有某一許可證級別的用戶才能存取某一 個密級的數(shù)據(jù)對象.7 .SQL語言中提供了哪些數(shù)據(jù)限制(自主存取限制)的語句請試舉幾例說明它們的使用 方法.答:SQL中的自主存取限制是通過 GRANT語句和REVOKE 語句來實現(xiàn)的.如:GRANT SELECT , INSERT ON StudentTO王平WITH GRANT OPTION ;就將Student表的SELECT 和INSERT 權(quán)限授予了用戶王平,后面的“ WITH GRANT OPTION 子句表示用戶王平同時也獲得了 “授權(quán)的權(quán)限,即可以把得到的權(quán)限繼續(xù)授 予其他用戶.REVOKE INSERT ON Student FROM 王平

41、 CASCADE ;就將Student表的INSERT 權(quán)限從用戶王平處收回,選項 CASCADE 表示,如果用戶王平將Student的INSERT權(quán)限又轉(zhuǎn)授給了其他用戶, 那么這些權(quán)限也將從其他用戶處收回.8 .請用SQL的GRANT 和REVOKE 語句(加上視圖機制)完成以下授權(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 SEL

42、ECT ON 職工WHEN USER(尸NAMETO ALL;(d )用戶劉星對職工表有 SELECT 權(quán)力,對工資字段具有更新權(quán)力.GRANT SELECT,UPDATE( 工資)ON 職工TO劉星(e )用戶張新具有修改這兩個表的結(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)力,他不能查看每個人的

43、工資.CREATE VIEW 部門工資 ASSELECT 部門.名稱,MAX(工資),MIN(工資),AVG(工資)FROM職工,部門WHERE 職工.部門號二部門部門號GROUP BY職工.部門號GRANT SELECT ON 部門工資TO楊蘭;9 .把習題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

44、 SELECT , UPDATE ON 職工FROM 劉星;(5) REVOKE ALTER TABLE ON 職工,部門FROM張新;(6) REVOKE ALL PRIVILIGES ON 職工,部門FROM 周平;(7) REVOKE SELECT ON部門工資FROM 楊蘭;DROP VIEW 部門工資;10 .為什么強制存取限制提供了更高級別的數(shù)據(jù)庫平安性答:強制存取限制(MAC )是對數(shù)據(jù)本身進行密級標記,無論數(shù)據(jù)如何復制,標記與數(shù)據(jù) 是一個不可分的整體,只有符合密級標記要求的用戶才可以操縱數(shù)據(jù),從而提供了更高級 別的平安性.11 .理解并解釋 MAC 機制中主體、客體、敏感度標記

45、的含義.答:主體是系統(tǒng)中的活動實體,既包括DBMS所治理的實際用戶,也包括代表用戶的各進程.客體是系統(tǒng)中的被動實體,是受主體操縱的,包括文件、基表、索引、視圖等.對于主體和客體,DBMS為它們每個實例值指派一個敏感度標記 Label .敏感度標記被分成假設干級別,例如絕密Top Secret 、機密Secret 可信Confidential 、公開Public 等.主體的敏感度標記稱為許可證級別 Clearance 玫 vel ,客體的敏感度標記稱為密級 Classification Level .13 .什么是數(shù)據(jù)庫的審計功能,為什么要提供審計功能答:審計功能是指 DBMS的審計模塊在用戶對

46、數(shù)據(jù)庫執(zhí)行操作的同時把所有操作自動記錄到系統(tǒng)的審計日志中.由于任何系統(tǒng)的平安保護舉措都不是完美無缺的,蓄意盜竊破壞數(shù)據(jù)的人總可能存在.利用數(shù)據(jù)庫的審計功能,DBA可以根據(jù)審計跟蹤的信息,重現(xiàn)導致數(shù)據(jù)庫現(xiàn)有狀況的一系列 事件,找出非法存取數(shù)據(jù)的人、時間和內(nèi)容等.14 .統(tǒng)計數(shù)據(jù)庫中存在何種特殊的平安性問題答:統(tǒng)計數(shù)據(jù)庫允許用戶查詢聚集類型的信息,如合計、平均值、最大值、最小值等,不 允許查詢單個記錄信息.但是,人們可以從合法的查詢中推導出不合法的信息,即可能存 在隱蔽的信息通道,這是統(tǒng)計數(shù)據(jù)庫要研究和解決的特殊的平安性問題.第5章數(shù)據(jù)庫完整性1什么是數(shù)據(jù)庫的完整性答:數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確

47、性和相容性.2 .數(shù)據(jù)庫的完整性概念與數(shù)據(jù)庫的平安性概念有什么區(qū)別和聯(lián)系答:數(shù)據(jù)的完整性和平安性是兩個不同的概念,但是有一定的聯(lián)系.前者是為了預防數(shù)據(jù)庫中存在不符合語義的數(shù)據(jù),預防錯誤信息的輸入和輸出,即所謂垃圾進垃圾出Garba : e InGarba : e out 所造成的無效操作和錯誤結(jié)果.后者是保護數(shù)據(jù)庫預防惡意的破壞和非法 的存取.也就是說,平安性舉措的防范對象是非法用戶和非法操作,完整性舉措的防范對 象是不合語義的數(shù)據(jù).3 .什么是數(shù)據(jù)庫的完整性約束條件可分為哪幾類答完整性約束條件是指數(shù)據(jù)庫中的數(shù)據(jù)應該滿足的語義約束條件.一般可以分為六類:靜態(tài) 列級約束、靜態(tài)元組約束、靜態(tài)關系約

48、束、動態(tài)列級約束、動態(tài)元組約束、動態(tài)關系約束.靜態(tài)列級約束是對一個列的取值域的說明,包括以下幾個方面:l 對數(shù)據(jù)類型的約束,包括數(shù)據(jù)的類型、長度、單位、精度等;2 對數(shù)據(jù)格式的約束; 3 對取值范圍或取值集合的約束;(4 )對空值的約束;(5 )其他約束.靜態(tài)元組約束就是規(guī)定組成一個元組的各個列之間的約束關系,靜態(tài)元組約束只局限在單個元組上.靜態(tài)關系約束是在 一個關系的各個元組之間或者假設干關系之間常常存在各種聯(lián)系或約束.常見的靜態(tài)關系約束有:(l )實體完整性約束; (2 )參照完整性約束;(3 )函數(shù)依賴約束.動態(tài)列級約束是修改列定義或列值時應滿足的約束條件,包括下面兩方面:(l )修改列

49、定義時的約束;(2 )修改列值時的約束.動態(tài)元組約束是指修改某個元組的值時需要參照 其舊值,并且新舊值之間需要滿足某種約束條件.動態(tài)關系約束是加在關系變化前后狀態(tài) 上的限制條件,例如事務一致性、原子性等約束條件.4 . DBMS的完整性限制機制應具有哪些功能答:DBMS的完整性限制機制應具有三個方面的功能:(l )定義功能,即提供定義完整性約束條件的機制;(2 )檢查功能,即檢查用戶發(fā)出的操作請求是否違背了完整性約束條件;(3 )違約反響:如果發(fā)現(xiàn)用戶的操作請求使數(shù)據(jù)違背了完整性約束條件,那么采取一定的動 作來保證數(shù)據(jù)的完整性.5 . RDBMS 在實現(xiàn)參照完整性時需要考慮哪些方面答RDBMs

50、在實現(xiàn)參照完整性時需要考慮以下幾個方面:(l )外碼是否可以接受空值.(2 )冊l除被參照關系的元組時的考慮,這時系統(tǒng)可能采取的作法有三種:l )級聯(lián)刪除(CASCADES ) ; 2 )受限刪除( RESTRICTED ) ; 3)置空值刪除( NULLIFIES ).(3 )在參照關系中插入元組時的問題,這時系統(tǒng)可能采取的作法有:l )受限插入;2 )遞歸插入.(4 )修改關系中主碼的問題.一般是不能用UPDATE語句修改關系主碼的.如果需要修改主碼值,只能先刪除該元組,然后再把具有新主碼值的元組插入到關系中.如果允許修改主碼,首先要保證主碼的惟一性和非空,否那么拒絕修改.然后要區(qū)分是參照

51、 關系還是被參照關系.6 .假設有下面兩個關系模式:職工(職工號,姓名,年齡,職務,工資,部門號),其中職工號為主碼;部門(部門號,名稱,經(jīng)理名, ) ,其中部門號為主碼.用 sQL語言 定義這兩個關系模式,要求在模式中完成以下完整性約束條件的定義:定義每個模式的主碼;定義參照完整性;定義職工年齡不得超過60歲.答CREATE TABLE DEPT(Deptno NUMBER(2),Deptname V ARCHAR(10),Manager V ARCHAR(10),PhoneNumber Char(12)CONSTRAINT PK_SC RIMARY KEY(Deptno);CREATE T

52、ABLE EMP(Empno NUMBER(4),Ename VARCHAR(10),Age NUMBER(2),CONSTRAINT C1 CHECK ( Aage=60),Job VARCHAR,Sal NUMBER(7,2),Deptno NUMBER(2),CONSTRAINT FK_DEPTNOFOREIGN KEY(Deptno)REFFERENCES DEPT(Deptno);7 .關系系統(tǒng)中,當操作違反實體完整性、參照完整性和用戶定義的完整性約束條件時, 一般是如何分別進行處理的答:對于違反實體完整性和用戶定義的完整性的操作一般都采用拒絕執(zhí)行的方式進行處理.而 對于違反參照完整

53、性的操作,并不都是簡單地拒絕執(zhí)行,有時要根據(jù)應用語義執(zhí)行一些附 加的操作,以保證數(shù)據(jù)庫的正確性.第6章關系數(shù)據(jù)庫理論1 .理解并給出以下術(shù)語的定義:函數(shù)依賴、局部函數(shù)依賴、完全函數(shù)依賴、傳遞依賴、候選碼、主碼、外碼、全碼(All 一key )、1 NF、ZNF、3NF、BcNF、多值依賴、4NF .定義1:設R(U)是屬性集U上的關系模式.X, Y是屬性集U的子集.假設對于 R(U)的任意 一個可能的關系r, r中不可能存在兩個元組在X上的屬性值相等,而在Y上的屬性值不等,那么稱X函數(shù)確定Y或Y函數(shù)依賴于 X,記作X Y.(即只要X上的屬性值相等,Y上的 值一定相等.) 術(shù)語和記號:X Y,但

54、Y不是X的子集,那么稱 X Y是非平凡的函數(shù)依賴.假設不特別聲明,總是討論非 平凡的函數(shù)依賴.X Y ,但Y是X的子集,那么稱 X Y是平凡的函數(shù)依賴.假設X Y,那么X叫做決定因素(Determinant).假設X Y, Y X,那么記作XY.、假設Y不函數(shù)依賴于 X,那么記作X Y.定義2:在R(U)中,如果X Y,并且對于X的任何一個真子集X,都有XY,那么稱Y對X完全函數(shù)依賴假設X Y ,但Y不完全函數(shù)依賴于 X ,那么稱Y對X局部函數(shù)依賴定義3:假設關系模式 R的每一個分量是不可再分的數(shù)據(jù)項,那么關系模式 R屬于第一范式(1NF).定義4:假設關系模式RC1NF,且每一個非主屬性完全

55、函數(shù)依賴于碼,那么關系模式R 2NF .(即1NF消除了非主屬性對碼的局部函數(shù)依賴那么成為2NF).定義5:關系模式R中假設不存在這樣的碼 X、屬性組Y及非主屬性Z(Z不是Y的子 、 集)使得X Y, Y X, Y Z成立,那么稱RC3NF.定義6:關系模式R C 1NF.假設X Y且Y不是X的子集時,X必含有碼,那么 R BCNF.定義7:關系模式R C 1NF,如果對于R的每個非平凡多值依賴 X Y(Y不是X的 子集,Z=U-X-Y 不為空),X都含有碼,那么稱 RC4NF.2 .建立一個關于系、學生、班級、學會等諸信息的關系數(shù)據(jù)庫.學生:學號、姓名、出生年月、系名、班號、宿舍區(qū).班級:班

56、號、專業(yè)名、系名、人數(shù)、入校年份.系:系名、系號、系辦公地點、人數(shù).學會:學會名、成立年份、辦公地點、人數(shù).語義如下:一個系有假設干專業(yè),每個專業(yè)每年只招一個班,每個班有假設干學生.一個 系的學生住在同一宿舍區(qū).每個學生可參加假設干學會,每個學會有假設干學生.學生參加某 學會有一個入會年份.請給出關系模式,寫出每個關系模式的極小函數(shù)依賴集,指出是否存在傳遞函數(shù)依賴, 對于函數(shù)依賴左部是多屬性的情況討論函數(shù)依賴是完全函數(shù)依賴,還是局部函數(shù)依賴.指 出各關系模式的候選碼、外部碼,有沒有全碼存在解:(1)關系模式如下:學生:S(Sno, Sname , Sbirth , Dept , Class , Rno)班級:C(Class , Pname , Dept , Cnum , Cyear)系:

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論