版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、數(shù)據(jù)庫系統(tǒng)概論第五版課后習題答案29219第1xx緒論1 .試述數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)的概念。答:(1 )數(shù)據(jù)(Data ):描述事物的符號記錄稱為數(shù)據(jù)。數(shù)據(jù)的 種類有數(shù)字、文字、圖形、圖像、聲音、正文等。數(shù)據(jù)與其語義是不 可分的。解析在現(xiàn)代計算機系統(tǒng)中數(shù)據(jù)的概念是 xx的。早期的計算 機系統(tǒng)主要用于科學計算,處理的數(shù)據(jù)是整數(shù)、實數(shù)、浮點數(shù)等傳統(tǒng) 數(shù)學中的數(shù)據(jù)?,F(xiàn)代計算機能存儲和處理的對象十分廣泛, 表示這些 對象的數(shù)據(jù)也越來越復雜。數(shù)據(jù)與其語義是不可分的。500這個數(shù)字可以表示一件物品的價格是 500元,也可以表示一個學術(shù)會議參 加的人數(shù)有500人,還可以表示一袋奶粉重 。
2、(2 )數(shù)據(jù)庫(DataBase,簡稱DB ):數(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ù)庫。希望讀者能夠從人們講話
3、或文章的 上下文中區(qū)分“數(shù)據(jù)庫系統(tǒng)”和“數(shù)據(jù)庫”,不要引起混淆。(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)品很多。著名的有xx IBM公司的DBZ關(guān)系數(shù)據(jù)庫管 理系統(tǒng)和IMS層次數(shù)據(jù)庫管理系統(tǒng)、xx Oracle公司的o
4、rade關(guān)系 數(shù)據(jù)庫管理系統(tǒng)、s油ase公司的s油ase關(guān)系數(shù)據(jù)庫管理系 統(tǒng)、xx微軟公司的SQL Serve ,關(guān)系數(shù)據(jù)庫管理系統(tǒng)等。2 .使用數(shù)據(jù)庫系統(tǒng)有什么好處?答:使用數(shù)據(jù)庫系統(tǒng)的好處是由數(shù)據(jù)庫管理系統(tǒng)的特點或優(yōu)點決定 的。使用數(shù)據(jù)庫系統(tǒng)的好處很多,例如,可以大大提高應用開發(fā)的效 率,方便用戶的使用,減輕數(shù)據(jù)庫系統(tǒng)管理人員維護的負擔,等等。 使用數(shù)據(jù)庫系統(tǒng)可以大大提高應用開發(fā)的效率。 因為在數(shù)據(jù)庫系統(tǒng)中 應用程序不必考慮數(shù)據(jù)的定義、存儲和數(shù)據(jù)存取的具體路徑,這些工作都由DBMS來完成。用一個通俗的比喻,使用了 DBMS就如有了一 個好參謀、好助手,許多具體的技術(shù)工作都由這個助手來完成。
5、開發(fā) 人員就可以專注于應用邏輯的設計,而不必為數(shù)據(jù)管理的許許多多復 雜的細節(jié)操心。還有,當應用邏輯改變,數(shù)據(jù)的邏輯結(jié)構(gòu)也需要改變 時,由于數(shù)據(jù)庫系統(tǒng)提供了數(shù)據(jù)與程序之間的獨立性, 數(shù)據(jù)邏輯結(jié)構(gòu) 的改變是DBA的責任,開發(fā)人員不必修改應用程序,或者只需要修 改很少的應用程序,從而既簡化了應用程序的編制,又大大減少了應 用程序的維護和修改。使用數(shù)據(jù)庫系統(tǒng)可以減輕數(shù)據(jù)庫系統(tǒng)管理人員 維護系統(tǒng)的負擔。因為DBMS在數(shù)據(jù)庫建立、運用和維護時對數(shù)據(jù)庫 進行統(tǒng)一的管理和控制,包括數(shù)據(jù)的完整性、xx、多用戶并發(fā)控制、故障恢復等,都由DBMS執(zhí)行??傊?,使用數(shù)據(jù)庫系統(tǒng)的優(yōu)點是很多 的,既便于數(shù)據(jù)的集中管理,控制
6、數(shù)據(jù)冗余,提高數(shù)據(jù)的利用率和一 致性,又有利于應用程序的開發(fā)和維護。 讀者可以在自己今后的工作 中結(jié)合具體應用,認真加以體會和總結(jié)。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ù)的 XX、完整性、并發(fā)控制 和恢復能力。文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的聯(lián)系是:文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)都是計 算機系統(tǒng)中管理數(shù)據(jù)的軟件。解析文件系統(tǒng)是操作
7、系統(tǒng)的重要組成部 分;而DBMS是獨立于操作系統(tǒng)的軟件。但是DBMS是在操作系統(tǒng)的 基礎上實現(xiàn)的;數(shù)據(jù)庫中數(shù)據(jù)的組織和存儲是通過操作系統(tǒng)中的文件 系統(tǒng)來實現(xiàn)的。4 .舉出適合用文件系統(tǒng)而不是數(shù)據(jù)庫系統(tǒng)的例子;再舉出適合用數(shù)據(jù)庫系統(tǒng)的應用例子。答 :(1)適用于文件系統(tǒng)而不是數(shù)據(jù)庫系統(tǒng)的應用例子數(shù)據(jù)的備份、軟件或應用程序使用過程中的臨時數(shù)據(jù)存儲一般使用文件比較合 適。早期功能比較簡單、比較固定的應用系統(tǒng)也適合用文件系統(tǒng)。(2 )適用于數(shù)據(jù)庫系統(tǒng)而非文件系統(tǒng)的應用例子目前,幾乎所 有企業(yè)或部門的信息系統(tǒng)都以數(shù)據(jù)庫系統(tǒng)為基礎,都使用數(shù)據(jù)庫。例如,一個工廠的管理信息系統(tǒng)(其中會包括許多子系統(tǒng),如庫存管
8、理 系統(tǒng)、物資采購系統(tǒng)、作業(yè)調(diào)度系統(tǒng)、設備管理系統(tǒng)、人事管理系統(tǒng) 等),學校的學生管理系統(tǒng),人事管理系統(tǒng),圖書館的圖書管理系統(tǒng), 等等,都適合用數(shù)據(jù)庫系統(tǒng)。希望讀者能舉出自己了解的應用例子。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ù)項(如一個學生的姓名),大到一組記錄(成
9、千上萬個學 生記錄)。而在文件系統(tǒng)中,數(shù)據(jù)的存取單位只有一個:記錄,如一 個學生的完整記錄。(2 )數(shù)據(jù)的共享性高,冗余度低,易擴充數(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ù)是某個應用的“私有資 源”。所謂“彈性
10、大”是指系統(tǒng)容易擴充也容易收縮, 即應用增加或 減少時不必修改整個數(shù)據(jù)庫的結(jié)構(gòu), 只需做很少的改動。可以取整體 數(shù)據(jù)的各種子集用于不同的應用系統(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ù)的xx保護
11、、數(shù)據(jù)的完整性檢查、并發(fā)控制和數(shù)據(jù)庫恢復。解析 DBMSt據(jù)控制功能包括四個方面:數(shù)據(jù)的xx保護:保護數(shù)據(jù)以防止 不合法的使用造成的數(shù)據(jù)的泄密和破壞;數(shù)據(jù)的完整性檢查:將數(shù)據(jù) 控制在有效的范圍內(nèi),或保證數(shù)據(jù)之間滿足一定的關(guān)系;并發(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)有組織
12、的大量的共享 的數(shù)據(jù)集合,它可以供各種用戶共享,具有最小冗余度和較高的數(shù)據(jù) 獨立性。DBMS在數(shù)據(jù)庫建立、運用和維護時對數(shù)據(jù)庫進行統(tǒng)一控制, 以保證數(shù)據(jù)的完整性、xx,并在多用戶同時使用數(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)的主要功能有哪些?答:(1)數(shù)據(jù)庫定義功能;(2 )數(shù)據(jù)存取功能;(3 )數(shù)據(jù)庫運行管理;(4 )數(shù)據(jù)庫的建立和維護功能。7 .什么是概念模型?試述概念模型的作用。答:概念模型,也稱信息模型,是按用戶的觀點來對數(shù)據(jù)和信息 建模,主要用于數(shù)據(jù)庫設計。概念模型
13、實際上是現(xiàn)實世界到機器世界的一個中間層次。概念模型用于信息世界的建模,是現(xiàn)實世界到信息世界的第一層抽象, 是數(shù) 據(jù)庫設計人員進行數(shù)據(jù)庫設計的有力工具, 也是數(shù)據(jù)庫設計人員和用 戶之間進行交流的語言。8 .定義并解釋概念模型中以下術(shù)語:實體,實體型,實體集,實體之間的聯(lián)系答:實體:客觀存在并可以相互區(qū)分的事物叫實體。實體型:具有相 同屬性的實體具有相同的特征和性質(zhì),用實體名及其屬性名集合來抽 象和刻畫同類實體,稱為實體型。實體集:同型實體的集合稱為實體 集;實體之間的聯(lián)系:通常是指不同實體型的實體集之間的聯(lián)系,實 體之間的聯(lián)系有一對一,一對多和多對多等多種類型。9 .試述數(shù)據(jù)模型的概念、數(shù)據(jù)模型
14、的作用和數(shù)據(jù)模型的三個要 素。答:數(shù)據(jù)模型是數(shù)據(jù)庫中用來對現(xiàn)實世界進行抽象的工具, 是數(shù)據(jù)庫 中用于提供信息表示和操作手段的形式構(gòu)架。 一般地講,數(shù)據(jù)模型是 嚴格定義的概念的集合。這些概念精確描述了系統(tǒng)的靜態(tài)特性、 動態(tài) 特性和完整性約束條件。因此數(shù)據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和 完整性約束三部分組成。(l )數(shù)據(jù)結(jié)構(gòu):是所研究的對象類型的集合,是對系統(tǒng)靜態(tài)特 性的描述。(2 )數(shù)據(jù)操作:是指對數(shù)據(jù)庫中各種對象(型)的實例(值) 允許進行的操作的集合,包括操作及有關(guān)的操作規(guī)則,是對系統(tǒng)動態(tài) 特性的描述。(3 )數(shù)據(jù)的約束條件:是一組完整性規(guī)則的集合。完整性規(guī)則 是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系
15、所具有的制約和依存規(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ù)據(jù)模型為基礎, 或者說支持某一個數(shù)據(jù)模型。數(shù)據(jù)庫系統(tǒng)中,模型有不同的層次。根 據(jù)模型應用的不同目的,可以將模型分成兩類或者說兩個層次: 一類 是概念模型,是按用戶的觀點來對數(shù)據(jù)和信息建模, 用于信息世界的 建模,強調(diào)語義表達能力,概念簡單清晰;另一類是數(shù)據(jù)模型,是按 計算機系統(tǒng)的觀點對數(shù)據(jù)建模,用于機器世界,人們可以用它定義、 操縱數(shù)據(jù)庫中
16、的數(shù)據(jù),一般需要有嚴格的形式化定義和一組嚴格定義 了語法和語義的語言,并有一些規(guī)定和限制,便于在機器上實現(xiàn)。10 .試述層次模型的概念,舉出三個層次模型的實例。答:(1)教員學生層次數(shù)據(jù)庫模型(2 )行政機構(gòu)層次數(shù)據(jù)庫模型什俄機構(gòu)科考)行政區(qū)域?qū)哟螖?shù)據(jù)庫模型11 .試述網(wǎng)狀模型的概念,舉出三個網(wǎng)狀模型的實例。答:滿足下面兩個條件的基本層次聯(lián)系集合為網(wǎng)狀模型。(l )允許一個以上的結(jié)點無雙親;(2 ) 一個結(jié)點可以有多 于一個的雙親實例1 :實例2 :實例3 :12 .試述網(wǎng)狀、層次數(shù)據(jù)庫的優(yōu)缺點。答:層次模型的優(yōu)點主要有:(1 )模型簡單,對具有一對多層次關(guān)系的部門描述非常自然、直觀,容易理解
17、,這是層次數(shù)據(jù)庫的突出優(yōu)點;(2 )用層次模型的應用系統(tǒng)性能好,特別是對于那些實體 間聯(lián)系是固定的且預先定義好的應用,采用層次模型來實現(xiàn),其性能 優(yōu)于關(guān)系模型;(3 )層次數(shù)據(jù)模型提供了良好的完整性支持。層次模型的缺點主要有:(1 )現(xiàn)實世界中很多聯(lián)系是非層次 性的,如多對多聯(lián)系、一個結(jié)點具有多個雙親等,層次模型不能自然 地表示這類聯(lián)系,只能通過引入冗余數(shù)據(jù)或引入虛擬結(jié)點來解決; (2 )對插入和刪除操作的限制比較多;(3 )查詢子女結(jié)點必須 通過雙親結(jié)點。網(wǎng)狀數(shù)據(jù)模型的優(yōu)點主要有:(1 )能夠更為直接地描述現(xiàn)實 世界,如一個結(jié)點可以有多個雙親;(2 )具有良好的性能,存取 效率較高。網(wǎng)狀數(shù)據(jù)
18、模型的缺點主要有:(1 )結(jié)構(gòu)比較復雜,而且隨著 應用環(huán)境的擴大,數(shù)據(jù)庫的結(jié)構(gòu)就變得越來越復雜,不利于最終用戶 掌握;(2 )其DDL、DML語言復雜,用戶不容易使用。由于記 錄之間聯(lián)系是通過存取路徑實現(xiàn)的,應用程序在訪問數(shù)據(jù)時必須選擇 適當?shù)拇嫒÷窂健R虼?,用戶必須了解系統(tǒng)結(jié)構(gòu)的細節(jié),加重了編寫 應用程序的負擔。13 .試述關(guān)系模型的概念,定義并解釋以下術(shù)語:(1 )關(guān)系(2 )屬性(3 )域(4 )元組(5 )主碼(6 )分量(7 ) 關(guān)系模式答:關(guān)系模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合和關(guān)系完整性約束三部 分組成。在用戶觀點下,關(guān)系模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表, 它由行和列組成。(l )
19、關(guān)系:一個關(guān)系對應通常說的一張表;(2 ) 屬性:表中的一列即為一個屬性;(3 )域:屬性的取值范圍;(4 ) 元組:表中的一行即為一個元組;(5 )主碼:表中的某個屬性組, 它可以惟一確定一個元組;(6 )分量:元組中的一個屬性值;(7 ) 關(guān)系模式:對關(guān)系的描述,一般表示為關(guān)系名(屬性1 ,屬性2 ,,屬性n)14 .試述關(guān)系數(shù)據(jù)庫的特點。答:關(guān)系數(shù)據(jù)模型具有下列優(yōu)點:(l )關(guān)系模型與非關(guān)系模型不 同,它是建立在嚴格的數(shù)學概念的基礎上的。(2 )關(guān)系模型的概念單一,無論實體還是實體之間的聯(lián)系都用關(guān)系表示, 操作的對象和 操作的結(jié)果都是關(guān)系,所以其數(shù)據(jù)結(jié)構(gòu)簡單、清晰,用戶 xx易用。 (3
20、)關(guān)系模型的存取路徑對用戶透明,從而具有更高的數(shù)據(jù)獨立性、 更好的安全保密性,也簡化了程序員的工作和數(shù)據(jù)庫開發(fā)建立的工 作。當然,關(guān)系數(shù)據(jù)模型也有缺點,其中最主要的缺點是,由于存取 路徑對用戶透明,查詢效率往往不如非關(guān)系數(shù)據(jù)模型。 因此為了提高 性能,必須對用戶的查詢請求進行優(yōu)化,增加了開發(fā)數(shù)據(jù)庫管理系統(tǒng) 的難度。15 .試述數(shù)據(jù)庫系統(tǒng)三級模式結(jié)構(gòu),這種結(jié)構(gòu)的優(yōu)點是什么?答:數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)由外模式、模式和內(nèi)模式組成。(參見書上圖1 . 29 )外模式,亦稱xx或用戶模式,是數(shù)據(jù)庫用戶(包 括應用程序員和最終用戶)能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和 特征的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖
21、,是與某一應用有關(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)模式,亦稱存儲模式,是數(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ù)在計算機中的表示和存儲。 為了能夠 在內(nèi)部實現(xiàn)這三個抽象層次的聯(lián)系和轉(zhuǎn)換, 數(shù)據(jù)庫系統(tǒng)在這三級模式 之間提供了兩層映像:外模式/模式映像和模式/內(nèi)模式映像。 正是 這
22、兩層映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)能夠具有較高的邏輯獨立性 和物理獨立性。16 .定義并解釋以下術(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ù)庫中的數(shù)據(jù)進行查詢、插入、刪除和修改的語句。17 .什么叫數(shù)據(jù)與程序的物
23、理獨立性?什么叫數(shù)據(jù)與程序的邏輯 獨立性?為什么數(shù)據(jù)庫系統(tǒng)具有數(shù)據(jù)與程序的獨立性?答:數(shù)據(jù)與程序的邏輯獨立性:當模式改變時(例如增加新的關(guān)系、 新的屬性、改變屬性的數(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ù)據(jù)的物理獨立性。數(shù)據(jù)庫管理系統(tǒng)在 三級模式之間提供的兩層
24、映像保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)能夠具有 較高的邏輯獨立性和物理獨立性。18 .試述數(shù)據(jù)庫系統(tǒng)的組成。答:數(shù)據(jù)庫系統(tǒng)一般由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、 應用系統(tǒng)、數(shù)據(jù)庫管理員和用戶構(gòu)成。19 .數(shù)據(jù)庫管理員、系統(tǒng)分析員、數(shù)據(jù)庫設計人員、應用程序 員的職責是什么?答:數(shù)據(jù)庫管理員的職責:(1)決定數(shù)據(jù)庫中的信息內(nèi)容和結(jié)構(gòu);(2)決定數(shù)據(jù)庫的存儲結(jié)構(gòu)和存取策略;(3)定義數(shù)據(jù)的xx要求和完整性約束條件;(4)監(jiān)控數(shù)據(jù)庫的使用和運行;(5)數(shù)據(jù)庫的改進和重組、重構(gòu)。系統(tǒng)分析員負責應用系統(tǒng)的需求分析和規(guī)范說明, 系統(tǒng)分析員要 和用戶及DBA相結(jié)合,確定系統(tǒng)的硬件、軟件配置,并參與數(shù)據(jù)庫 系統(tǒng)的
25、概要設計。數(shù)據(jù)庫設計人員負責數(shù)據(jù)庫中數(shù)據(jù)的確定、 數(shù)據(jù)庫 各級模式的設計。數(shù)據(jù)庫設計人員必須參加用戶需求調(diào)查和系統(tǒng)分 析,然后進行數(shù)據(jù)庫設計。在很多情況下,數(shù)據(jù)庫設計人員就由數(shù)據(jù) 庫管理員擔任。應用程序員負責設計和編寫應用系統(tǒng)的程序模塊,并進行調(diào)試和安裝。第二章關(guān)系數(shù)據(jù)庫1 .試述關(guān)系模型的三個組成部分。答:關(guān)系模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合和關(guān)系完整性約束三部 分組成。2 .試述關(guān)系數(shù)據(jù)語言的特點和分類。答:關(guān)系數(shù)據(jù)語言可以分為三類:關(guān)系代數(shù)語言。關(guān)系演算語言:元組關(guān)系演算語言和域關(guān)系演算語言。SQL具有關(guān)系代數(shù)和關(guān)系演算雙重特點的語言。這些關(guān)系數(shù)據(jù)語言的共同特點是,語言具有完備的表達能力
26、,是 非過程化的集合操作語言,功能強,能夠嵌入高級語言中使用。3 (略)4 .5 .述關(guān)系模型的完整性規(guī)則。在參照完整性中,為什么外部碼屬性的值也可以為空?什么情況下才可以為空?答:實體完整性規(guī)則是指若屬性 A是基本關(guān)系R的主屬性,則屬性A不能取空值若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼,它與基本關(guān)系S的主 碼Ks相對應(基本關(guān)系R和S不一定是不同的關(guān)系),則對于Rxx每 個元組在F上的值必須為:或者取空值(F的每個屬性值均為空值); 或者等于Sxx某個元組的主碼值。即屬性F本身不是主屬性,則可以 取空值,否則不能取空值。6 .設有一個SPJ數(shù)據(jù)庫,包括S, P, J, SPJ四個關(guān)系模式:1
27、)求供應工程J1零件的供應商號碼SNO兀 Sno(T Jno= 'J1' (SPJ)2)求供應工程J1零件P1的供應商號碼SNO兀 Sno(rJno= 'J1' A Pno= 'P1 '(SPJ)3)求供應工程J1零件為紅色的供應商號碼 SNO兀 Sno(兀 Sno,Pno ( g Jno= ' J1 ' (SPJ) 00 兀 Pno ( g COLOR= 紅(P)4)求沒有使用xx供應商生產(chǎn)的紅色零件的工程號 JNQ兀 Jno(SPJ)-兀 JNO(rcity= 'xx' A Color='紅'(
28、Soo SPg P)5)求至少用了供應商S1所供應的全部零件的工程號JNQJ Jno, Pno(SPJ) + 兀 Pno (b Sno= 'S1 ' (SPJ)7 .試述等值連接與自然連接的區(qū)別和聯(lián)系。答:連接運算符是“=”的連接運算稱為等值連接。它是從關(guān)系R與S的xxxx積中選取A, B屬性值相等的那些元組自然連接是一種特殊的等值連接,它要求兩個關(guān)系中進行比較的 分量必須是相同的屬性組,并且在結(jié)果中把重復的屬性列去掉。8 .關(guān)系代數(shù)的基本運算有哪些?如何用這些基本運算來表示其 他運算?答:并、差、xx積、投影和選擇5種運算為基本的運算。其他3 種運算,即交、連接和除,均可以用
29、這 5種基本運算來表達。第三章關(guān)系數(shù)據(jù)庫語言SQL(1) .試述sQL語言的特點。答:(1 )綜合統(tǒng)一。sQL語言集數(shù)據(jù)定義語言DDL、數(shù)據(jù)操縱語言 DML、數(shù)據(jù)控制語言DCL的功能于一體。(2)高度非過程化。用sQL語言進行數(shù)據(jù)操作,只要提出“做什么”,而無需指明“怎么做”,因此無需了解存取路徑,存取路徑 的選擇以及sQL語句的操作過程由系統(tǒng)自動完成。(3)面向集合的操作方式。sQL語言采用集合操作方式,不僅 操作對象、查找結(jié)果可以是元組的集合,而且一次插入、刪除、更新 操作的對象也可以是元組的集合。(4)以同一種語法結(jié)構(gòu)提供兩種使用方式。sQL語言既是自含式語言,又是嵌入式語言。作為自含式
30、語言,它能夠獨立地用于聯(lián)機 交互的使用方式;作為嵌入式語言,它能夠嵌入到高級語言程序中, 供程序員設計程序時使用。(5)語言簡捷,易學易用。(2)(3) (1) select * from S where A='10'(4) select A,B from S;(5) select A,B,S.C,S.D,E,F from S ,T where S.C=T.C and S.D=T.D;(6) select * from S ,T where S.C=T.C;(7) select * from S ,T where S.A<T.E;(8) select S.C,S.D,T.
31、* from S ,T ;4 .用sQL語句建立第二章習題6中的4個表。答:對于 S 表:S ( SNO , SNAME , STATUS , CITY );建S表:CREATTABLES ( Sno C(2) UNIQUESnameC(6) , Status C(2), City C(4);對于 P 表:P ( PNO , PNAME , COLOR , W曰GHT );建P表:CREATE TABLE P(Pno C(2) UNIQUE, Pname C(6) , COLOR C(2) , WEIGHT INT);對于 J 表:J ( JNO , JNAME , CITY );建J表:CR
32、EATE 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) , QTYINT)針對建立的4個表用sQL語言完成第二章習題6中的查詢。(1)求供應工程Jl零件的供應商號碼SNO ;SELECT DIST SNO FROM SPJ WHERE JNQ='(2 )求供應工程Jl零件Pl的供應商號碼SNO ;SELECT DI
33、ST SNO FROM SPJ WHERE JNO='J1' AND PNO='P1'(3 )求供應工程Jl零件為紅色的供應商號碼SNO ;SELECT3NCFROhSPJ,P WHERJNO='J1' ANDSPJ.PNO=P.PNANDCOLOR=' 紅(4 )求沒有使用xx供應商生產(chǎn)的紅色零件的工程號 JNO ;SELECT DIST JNO FROM SPJ WHERNONOTIN (SELE JNOFROM SPJ,P,S WHERE S.CITY='xx' AND COLORS' ANDS.SNO=SP
34、J.SNO AND P.PNO=SPJ.PN O)(5 )求至少用了供應商Sl所供應的全部零件的工程號JNO ;由于VFP不允許子查詢嵌套太深,將查詢分為兩步A、查詢S1供應商供應的零件號SELECT DIST PNO FROM SPJ WHERE SNO=W是(P1, P2)R查詢哪一個工程既使用 P1零件又使用P2零件。SELECT JNO FROM SPJ WHERE PNO='P1'AND JNO IN (SELECT JNO FROM SPJ WHERE PNO='P2')5 .針對上題中的四個表試用 SQL語言完成以下各項操作:(1)找出所有供應商的
35、姓名和所在城市。SELECT SNAME,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)找出xx廠商供應的所有零件號碼。SELECTNOFROhSPJ,S WHERE.SNO=SPJ
36、.SNONDCITY='xx'(6)出使用xx產(chǎn)的零件的工程名稱。SELECT JNAME FROM SPJ,S,JWHERE S.SNO=SPJ.SNO AND S.CITY='xx' AND J.JNO=SPJ.JNO(7)找出沒有使用xx產(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='xxt 用于JNO是唯一或不口t一的情況.注意:SELECT DIST JNO FRO
37、M SPJ,S WHERE S.SNO=SPJ.SNO AND S.CITY<>'xx'適用于JNO是唯一的情況(8)把全部紅色零件的顏色改成藍色。UPDATE P SET COLOR='xx' WHERE COLOR='(9)由S5供給J4的零件P6改為由S3供應。UPDATE SPJ SETSNO='S3' WHERSNO='S5' ANDJNO='J4' ANDPNO='P6'(10)從供應商關(guān)系中刪除供應商號是 S2的記錄,并從供應情況 關(guān)系中刪除相應的記錄。A、DELE
38、TE FROM S WHERE SNO =S2'B、DELETE FROM SPJ WHERE SNO=S2' (11)請將(S2, J6, P4, 200)插入供應情況關(guān)系INSERT INTO SPJ VALUES ( ' S2' , ' J6' , ' P4' , 200)6 .什么是基本表?什么是視圖?兩者的區(qū)別和聯(lián)系是什么?答:基本表是本身獨立存在的表,在 sQL中一個關(guān)系就對應一 個表。視圖是從一個或幾個基本表導出的表。 視圖本身不獨立存儲在 數(shù)據(jù)庫中,是一個虛表。即數(shù)據(jù)庫中只存放視圖的定義而不存放視圖 對應的數(shù)據(jù),這
39、些數(shù)據(jù)仍存放在導出視圖的基本表中。 視圖在概念上 與基本表等同,用戶可以如同基本表那樣使用視圖, 可以在視圖上再 定義視圖。7 .試述視圖的優(yōu)點。答(1 )視圖能夠簡化用戶的操作;(2 )視圖使用戶能以多種 角度看待同一數(shù)據(jù);(3 )視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏 輯獨立性;(4 )視圖能夠?qū)C密數(shù)據(jù)提供安全保護。8 .哪類視圖是可以更新的?哪類視圖是不可更新的?各舉一例說明答:基本表的行列子集視圖一般是可更新的。 若視圖的屬性來自 集合函數(shù)、表達式,則該視圖肯定是不可以更新的。所有的視圖是否都可以更新?為什么?答:不是。視圖是不實際存儲數(shù)據(jù)的虛表,因此對視圖的更新, 最終要轉(zhuǎn)換為對基本表
40、的更新。因為有些視圖的更新不能惟一有意義 地轉(zhuǎn)換成對相應基本表的更新,所以,并不是所有的視圖都是可更新 的.9 .請為三建工程項目建立一個供應情況的視圖, 包括供應商代 碼(SNO卜零件代碼(PNO)、供應數(shù)量(QTY)。CREATE VIEW VSP AS SELECT SNO,SPJ.PNO,QTY FROM SPJ,JWHERE SPJ.JNO=J.JNO AND J.JNAME建針對該視圖VSP完成下列查詢:(1)找出三建工程項目使用的各種零件代碼及其數(shù)量。SELECT DIST PNO,QTY FROM VSP 找出供應商S1的供應情況。SELECT DIST * FROM VSP
41、WHERE SNO='S1'第4xx數(shù)據(jù)庫xx1 .什么是數(shù)據(jù)庫的xx?答:數(shù)據(jù)庫的xx是指保護數(shù)據(jù)庫以防止不合法的使用所造成的 數(shù)據(jù)泄露、更改或破壞。2 .數(shù)據(jù)庫xx和計算機系統(tǒng)的xx有什么關(guān)系?答:xx問題不是數(shù)據(jù)庫系統(tǒng)所獨有的,所有計算機系統(tǒng)都有這個問題。只是在數(shù)據(jù)庫系統(tǒng)中大量數(shù)據(jù)集中存放, 而且為許多最終用戶直 接共享,從而使xx問題更為突出。系統(tǒng)安全保護措施是否有效是數(shù)據(jù)庫系統(tǒng)的主要指標之一。數(shù)據(jù)庫的xx和計算機系統(tǒng)的xx,包括操作系統(tǒng)、網(wǎng)絡系統(tǒng)的xx是 緊密聯(lián)系、相互支持的,4 .試述實現(xiàn)數(shù)據(jù)庫xx控制的常用方法和技術(shù)。答:實現(xiàn)數(shù)據(jù)庫xx控制的常用方法和技術(shù)有:(l
42、 )用戶標識和鑒別:該方法由系統(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ù)提供一定程度的 安全保護。(4 )審計:建立審計xx,把用戶對數(shù)據(jù)庫的所有操作自動記 錄下來放入審計xx中,DBA可以利用審計跟蹤的信息,重現(xiàn)導致
43、數(shù) 據(jù)庫現(xiàn)有狀況的一系列事件,找出非法存取數(shù)據(jù)的人、時間和內(nèi)容等。 (5 )數(shù)據(jù)xx:對存儲和傳輸?shù)臄?shù)據(jù)進行xx處理,從而使得不知道 xx算法的人無法獲知數(shù)據(jù)的內(nèi)容。5 .什么是數(shù)據(jù)庫中的自主存取控制方法和強制存取控制方法?答:自主存取控制方法:定義各個用戶對不同數(shù)據(jù)對象的存取權(quán)限。當用戶對數(shù)據(jù)庫訪問時首先檢查用戶的存取權(quán)限。 防止不合法用戶對 數(shù)據(jù)庫的存取。強制存取控制方法:每一個數(shù)據(jù)對象被(強制地)標以一定的密 級,每一個用戶也被(強制地)授予某一個級別的xx。系統(tǒng)規(guī)定只有具有某一 xx級別的用戶才能存取某一個密級的數(shù)據(jù)對象。6 . (1) GRANT ALL PRIVILEGES ON
44、Student,ClassTO U1WITH GRANT OPTION ;(2)GRANTSELECT,UPDATE(庭住址),DELETE ONStudent TOU2;(3)GRANT SELECT ON Class TO PUBLIC(4)GRANT SELECT,UPDATE ON Student TO R1(5)GRANT R1 TO U1 WITH ADMIN OPTION7 .SQL語言中提供了哪些數(shù)據(jù)控制(自主存取控制)的語句? 請試舉幾例說明它們的使用方法。答:SQL中的自主存取控制是通過 GRANT1句和REVOKE句來實現(xiàn) 的。如:GRANT SELECT , INSER
45、T ON StudentTO xxWITH GRANT OPTION ;就將Student表的SELEC可口 INSERT權(quán)限授予了用戶xx,后面的“WITH GRANT OPTION子句表示用戶xx同時也獲得了 “授權(quán)”的權(quán)限,即可以把得到的權(quán)限繼續(xù)授予其他用戶。REVOKE INSERT ON Student FROM xxCASCADE ;就將Student表的INSERT權(quán)限從用戶xx處收回,選項CASCADE!示,如果用戶xx將Student的INSERT權(quán)限又轉(zhuǎn)授給了其他用戶, 那么這些權(quán)限也將從其他用戶處收回。7 .請用SQL的GRAN林口 REVOKE句(加上視圖機制)完成以下
46、 授權(quán)定義或存取控制功能:(a )用戶xx對兩個表有SELECT權(quán)力。GRANT SELECT ON工,部門TO xx(b )用戶xx對兩個表有INSERT和DELETE權(quán)力。GRANT INSERT,DELETE ON 工,部門TO xx (c ) 每個職工只對自己的記錄有 SELECT力GRANT SELECT ON 工WHEN USER(尸NAMETO ALL;(d )用戶xx對職工表有SELECT權(quán)力,對工資字段具有更新 權(quán)力。GRANT SELECT,UPDATE) ON 職工TO xx(e )用戶xx具有修改這兩個表的結(jié)構(gòu)的權(quán)力。GRANT ALTER TABLE ON 工,部門T
47、O xx;(f )用戶xx具有對兩個表所有權(quán)力(讀,插,改,刪數(shù)據(jù)), 并具有給其他用戶授權(quán)的權(quán)力。GRANT ALL PRIVILIGES OMR工,部門TO xxWITH GRANT OPTION;(g )用戶xx具有從每個部門職工xxSELECT最高工資、最低 工資、平均工資的權(quán)力,他不能查看每個人的工資。CREATE VIEW?門工資 ASSELECT部門.名稱,MAXH資),MIN(工資),AVG(工資)FROMK工,部門WHERER工.部門號二部門.部門號GROUP BYR工.部門號GRANT SELECT ON 門工資TO xx;8 .把習題8中(1) - (7)的每一種情況,撤
48、銷各用戶所授 予的權(quán)力(1) REVOKE SELECT ONR工,部門 FROM xx;(2) REVOKE INSERT , DELETE ON職工,部門 FROM xx;(3) REOVKE SELECT ONR 工WHEN USER ( ) =NAMEFROM ALI ;(4) REVOKE SELECT , UPDATE ONR 工FROM xx(5) REVOKE ALTER TABLE ONR工,部門FROM xx(6) REVOKE ALL PRIVILIGES ON 職工,部門FROM xx(7) REVOKE SELECT ONB 門工資FROM xxDROP VIEVtB
49、 門工資;(9) 解并解釋MAC機制中主體、客體、敏感度標記的含義。答:主體是系統(tǒng)中的活動實體,既包括 DBM新管理的實際用戶,也 包括代表用戶的各進程??腕w是系統(tǒng)中的被動實體,是受主體操縱的,包括文件、基表、 xx、 視圖等。對于主體和 客體,DBM助它們每個實例(值)指派一個敏 感度標記(Label )。敏感度標記被分成若干級別,例如絕密(Top Secret )、機密 (Secret ) 可信(Confidential )、公開(PubliC )等。主體 的敏感度標記稱為xx級別(ClearanCe玫vel ),客體的敏感度標 記稱為密級(Classification Level )。1
50、1 .什么是數(shù)據(jù)庫的審計功能,為什么要提供審計功能?答:審計功能是指DBMSI勺審計模塊在用戶對數(shù)據(jù)庫執(zhí)行操作的 同時把所有操作自動記錄到系統(tǒng)的審計 xx中。因為任何系統(tǒng)的安全保護措施都不是完美無缺的,蓄意盜竊破壞數(shù)據(jù) 的人總可能存在。利用數(shù)據(jù)庫的審計功能,DBA可以根據(jù)審計跟蹤的 信息,重現(xiàn)導致數(shù)據(jù)庫現(xiàn)有狀況的一系列事件, 找出非法存取數(shù)據(jù)的 人、時間和內(nèi)容等。第5xx數(shù)據(jù)庫完整性1什么是數(shù)據(jù)庫的完整性?答:數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確性和相容性。2 .數(shù)據(jù)庫的完整性概念與數(shù)據(jù)庫的 xx概念有什么區(qū)別和聯(lián)系?答:數(shù)據(jù)的完整性和XX是兩個不同的概念,但是有一定的聯(lián)系。前 者是為了防止數(shù)據(jù)庫中存
51、在不符合語義的數(shù)據(jù), 防止錯誤信息的輸入 和輸出,即所謂垃圾進垃圾出(Garba : e In Garba : e out )所 造成的無效操作和錯誤結(jié)果。后者是保護數(shù)據(jù)庫防止惡意的破壞和非 法的存取。也就是說,xx措施的防范對象是非法用戶和非法操作, 完整性措施的防范對象是不合語義的數(shù)據(jù)。3 .什么是數(shù)據(jù)庫的完整性約束條件?可分為哪幾類?答完整性約束條件是指數(shù)據(jù)庫中的數(shù)據(jù)應該滿足的語義約束條件。 一般可以分為六類:靜態(tài)列級約束、靜態(tài)元組約束、靜態(tài)關(guān)系約束、 動態(tài)列級約束、動態(tài)元組約束、動態(tài)關(guān)系約束。靜態(tài)列級約束是對一 個列的取值域的說明,包括以下幾個方面:(1 )對數(shù)據(jù)類型的約束,包括數(shù)據(jù)的
52、類型、xx、單位、精度等;(2 )對數(shù)據(jù)格式的約 束;(3 )對取值范圍或取值集合的約束;(4 )對空值的約束; (5 )其他約束。靜態(tài)元組約束就是規(guī)定組成一個元組的各個列之間 的約束關(guān)系,靜態(tài)元組約束只局限在單個元組上。 靜態(tài)關(guān)系約束是在 一個關(guān)系的各個元組之間或者若干關(guān)系之間常常存在各種聯(lián)系或約 束。常見的靜態(tài)關(guān)系約束有:(1 )實體完整性約束;(2 )參照 完整性約束;(3 )函數(shù)依賴約束。動態(tài)列級約束是修改列定義或列值時應滿足的約束條件,包括下 面兩方面:(1 )修改列定義時的約束;(2 )修改列值時的約束。 動態(tài)元組約束是指修改某個元組的值時需要參照其舊值,并且xx值之間需要滿足某種
53、約束條件。動態(tài)關(guān)系約束是加在關(guān)系變化前后狀態(tài) 上的限制條件,例如事務一致性、原子性等約束條件。4 . DBMS的完整性控制機制應具有哪些功能?答:DBMSW完整性控制機制應具有三個方面的功能:(1 )定義功能,即提供定義完整性約束條件的機制;(2 )檢查功能,即檢查用戶發(fā)出的操作請求是否違背了完整性約束條件;(3 )違約反應:如果發(fā)現(xiàn)用戶的操作請求使數(shù)據(jù)違背了完整性約束條件, 則采取一定 的動作來保證數(shù)據(jù)的完整性。5 . RDBMS在實現(xiàn)參照完整性時需要考慮哪些方面?答RDBM於實現(xiàn)參照完整性時需要考慮以下幾個方面:(1)外碼是否可以接受空值。(2 )冊1除被參照關(guān)系的元組時的考慮,這時系統(tǒng)可
54、能采取的作法有三種:1 )級聯(lián)刪除(CASCADES ) ; 2 )受限刪除(RESTRICTED ) ; 3 )置空值刪除(NULLIFIES )。( 3 )在參照關(guān)系中插入元組時的問題,這時系統(tǒng)可能采取的作法有:1 )受限插入;2 )遞歸插入。(4 )修改關(guān)系中主碼的問題。一般是不能用 UPDATE語句修改 關(guān)系主碼的。如果需要修改主碼值,只能先刪除該元組,然后再把具 有新主碼值的元組插入到關(guān)系中。 如果允許修改主碼,首先要保證主 碼的惟一性和非空,否則拒絕修改。然后要區(qū)分是參照關(guān)系還是被參 照關(guān)系。6 .假設有下面兩個關(guān)系模式:職工(職工號,姓名,年齡,職 務,工資,部門號),其中職工號
55、為主碼;部門(部門號,名稱,經(jīng) 理名,電話),其中部門號為主碼。用 sQL語言定義這兩個關(guān)系模 式,要求在模式中完成以下完整性約束條件的定義: 定義每個模式的 主碼;定義參照完整性;定義職工年齡不得超過 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
56、(2),CONSTRAINT C1 CHECK ( Aage<=60),Job VARCHAR(9),Sal NUMBER(7,2),Deptno NUMBER(2),CONSTRAINT FK_DEPTNOFOREIGN KEY(Deptno)REFFERENCES DEPT(Deptno);7 .關(guān)系系統(tǒng)中,當操作違反實體完整性、參照完整性和用戶定 義的完整性約束條件時,一般是如何分別進行處理的?答:對于違反實體完整性和用戶定義的完整性的操作一般都采用拒 絕執(zhí)行的方式進行處理。而對于違反參照完整性的操作,并不都是簡 單地拒絕執(zhí)行,有時要根據(jù)應用語義執(zhí)行一些附加的操作, 以保證數(shù) 據(jù)庫
57、的正確性。第6xx關(guān)系數(shù)據(jù)庫理論1 .理解并給出下列術(shù)語的定義:函數(shù)依賴、部分函數(shù)依賴、完全函數(shù)依賴、傳遞依賴、候選碼、主碼、 外碼、全碼(All key )、1 NF、ZNF、3NF、BcNF、多值依 賴、4NF。定義1:設R(U)是屬性集U上的關(guān)系模式。X, Y是屬性集U的 子集。若對于R(U)的任意一個可能的關(guān)系r, r中不可能存在兩個元 組在X上的屬性值相等,而在Y上的屬性值不等,則稱X函數(shù)確定Y 或Y函數(shù)依賴于X,記作XY (即只要X上的屬性值相等,Y上的值 一定相等。)術(shù)語和記號:XY,彳a Y不是X的子集,則稱XY是非平凡的函數(shù)依賴。若不特 別聲明,總是討論非平凡的函數(shù)依賴。XY,彳a Y是X的子集,則稱XY是平凡的函數(shù)依賴。若XY,則X叫做決定因素(Determinant)。若XY,、人則記作XY若Y不函數(shù)依賴于X,則記作X Y。定義2:在R(U)中,如果XY,并且對于X的任何一個真 子集X',都有X' Y ,則稱Y對X完全函數(shù)依賴若XY,彳S Y不完全函數(shù)依賴于X,則稱Y對X部分函數(shù)依賴定義3:若關(guān)系模式R的每一個分量是不可再分的數(shù)據(jù)項,則關(guān) 系模式R屬于第一范式(1NF)。定義4:若關(guān)系模式R6 1N5且每一個非主屬性完全函數(shù)依賴于 碼,
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 遼寧醫(yī)藥職業(yè)學院《Java+語言程序設計實驗》2023-2024學年第一學期期末試卷
- 蘭州工業(yè)學院《行為醫(yī)學》2023-2024學年第一學期期末試卷
- 江西建設職業(yè)技術(shù)學院《土地測量與評價》2023-2024學年第一學期期末試卷
- 吉林職業(yè)技術(shù)學院《外國音樂史Ⅰ》2023-2024學年第一學期期末試卷
- 湖南電子科技職業(yè)學院《物流流程再造》2023-2024學年第一學期期末試卷
- 黑龍江司法警官職業(yè)學院《生物信息學》2023-2024學年第一學期期末試卷
- 重慶應用技術(shù)職業(yè)學院《集成電路版圖設計》2023-2024學年第一學期期末試卷
- 重慶建筑工程職業(yè)學院《外語教育研究方法》2023-2024學年第一學期期末試卷
- 中央戲劇學院《計算機網(wǎng)絡基礎》2023-2024學年第一學期期末試卷
- 中國石油大學(北京)《數(shù)據(jù)庫技術(shù)及應用實踐》2023-2024學年第一學期期末試卷
- 數(shù)字廣告數(shù)據(jù)要素流通保障技術(shù)研究報告(2023年)
- JJF(蘇) 283-2024 暫態(tài)地電壓法局部放電檢測儀校準規(guī)范
- 某27層高層住宅樓施工組織設計方案
- 2025年中考語文備考之名著導讀:《水滸傳》主要人物梳理
- 小學科學學情分析報告總結(jié)
- 健康中國產(chǎn)業(yè)園規(guī)劃方案
- (2024年)二年級上冊音樂
- 2024屆高考英語一輪復習讀后續(xù)寫脫險類續(xù)寫講義
- ISO13485內(nèi)部審核檢查表+內(nèi)審記錄
- 2024年《藥物臨床試驗質(zhì)量管理規(guī)范》(GCP)網(wǎng)絡培訓題庫
- 新華健康體檢報告查詢
評論
0/150
提交評論