【正文】
一些規(guī)定和限制,便于在機器上實現(xiàn)。 數(shù)據(jù)庫系統(tǒng)中模型有不同的層次。 數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)。 *解析: 數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)中最重要的概念之一。 ?、跀?shù)據(jù)操作:是指對數(shù)據(jù)庫中各種對象(型)的實例(值)允許進行的操作的集合,包括操作及有關(guān)的操作規(guī)則,是對系統(tǒng)動態(tài)特性的描述。因此數(shù)據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完整性約束三部分組成。 一般地講,數(shù)據(jù)模型是嚴(yán)格定義的概念的集合。 ?。罚囀鰯?shù)據(jù)模型的概念、數(shù)據(jù)模型的作用和數(shù)據(jù)模型的三個要素。 數(shù)據(jù)庫系統(tǒng)的出現(xiàn)使信息系統(tǒng)從以加工數(shù)據(jù)的程序為中心轉(zhuǎn)向圍繞共享的數(shù)據(jù)庫為中心的新階段。它可以供各種用戶共享,具有最小冗余度和較高的數(shù)據(jù)獨立性。 *解析: DBMS數(shù)據(jù)控制功能包括四個方面: 數(shù)據(jù)的安全性保護:保護數(shù)據(jù)以防止不合法的使用造成的數(shù)據(jù)的泄密和破壞; 數(shù)據(jù)的完整性檢查:將數(shù)據(jù)控制在有效的范圍內(nèi)或保證數(shù)據(jù)之間滿足一定的關(guān)系; 并發(fā)控制:對多用戶的并發(fā)操作加以控制和協(xié)調(diào),保證并發(fā)操作的正確性; 數(shù)據(jù)庫恢復(fù):當(dāng)計算機系統(tǒng)發(fā)生硬件故障、軟件故障,或者由于操作員的失誤以及故意的破壞影響數(shù)據(jù)庫中數(shù)據(jù)的正確性,甚至造成數(shù)據(jù)庫部分或全部數(shù)據(jù)的丟失時,能將數(shù)據(jù)庫從錯誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)(亦稱為完整狀態(tài)或一致狀態(tài))。 四、數(shù)據(jù)由DBMS統(tǒng)一管理和控制 數(shù)據(jù)庫的共享是并發(fā)的共享,即多個用戶可以同時存取數(shù)據(jù)庫中的數(shù)據(jù)甚至可以同時存取數(shù)據(jù)庫中同一個數(shù)據(jù)。即數(shù)據(jù)的邏輯結(jié)構(gòu)或物理結(jié)構(gòu)改變了,程序不會跟著改變。 *解析: 所謂“獨立性”即相互不依賴。 三、數(shù)據(jù)獨立性高 數(shù)據(jù)獨立性包括數(shù)據(jù)的物理獨立性和數(shù)據(jù)的邏輯獨立性。 所謂“彈性大”是指系統(tǒng)容易擴充也容易收縮,即應(yīng)用增加或減少時不必修改整個數(shù)據(jù)庫的結(jié)構(gòu),或者只要做很少的修改。 所謂“數(shù)據(jù)面向某個應(yīng)用”是指數(shù)據(jù)結(jié)構(gòu)是針對某個應(yīng)用設(shè)計的,只被這個應(yīng)用程序或應(yīng)用系統(tǒng)使用。由于數(shù)據(jù)面向整個系統(tǒng),是有結(jié)構(gòu)的數(shù)據(jù),不僅可以被多個應(yīng)用共享使用,而且容易增加新的應(yīng)用,這就使得數(shù)據(jù)庫系統(tǒng)彈性大,易于擴充。如一個學(xué)生的完整記錄??梢孕〉侥骋粋€數(shù)據(jù)項(如一個學(xué)生的姓名),大到一組記錄(成千上萬個學(xué)生記錄)。在數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)不再針對某一個應(yīng)用,而是面向全組織,具有整體的結(jié)構(gòu)化。 數(shù)據(jù)庫系統(tǒng)的主要特點有: 一、數(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ū)別。 希望同學(xué)們能舉出自己了解的應(yīng)用例子。適用于數(shù)據(jù)庫系統(tǒng)而非文件系統(tǒng)的應(yīng)用例子 目前,幾乎所有企業(yè)或部門的信息系統(tǒng)都以數(shù)據(jù)庫系統(tǒng)為基礎(chǔ),都使用數(shù)據(jù)庫。 早期功能比較簡單、比較固定的應(yīng)用系統(tǒng)也適合用文件系統(tǒng)。 這里我們就不具體展開了。例如,數(shù)據(jù)庫實現(xiàn)的基礎(chǔ)是文件,對數(shù)據(jù)庫的任何操作最終要轉(zhuǎn)化為對文件的操作?;蛘哒f,讀者進一步學(xué)習(xí)數(shù)據(jù)庫管理系統(tǒng)實現(xiàn)的有關(guān)課程(第十一章只是DBMS實現(xiàn)技術(shù)的概述)后可以對本題有深入的理解和全面的解答。數(shù)據(jù)庫中數(shù)據(jù)的組織和存儲是通過操作系統(tǒng)中文件系統(tǒng)來實現(xiàn)的。 *解析: 文件系統(tǒng)是操作系統(tǒng)的重要組成部分,而DBMS是獨立于操作系統(tǒng)的軟件。 讀者可以參考《概論》 中的有關(guān)內(nèi)容。 文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別: 文件系統(tǒng)面向某一應(yīng)用程序,共享性差、冗余度大,獨立性差,紀(jì)錄內(nèi)有結(jié)構(gòu)、整體無結(jié)構(gòu),應(yīng)用程序自己控制。讀者可以在自己今后的工作中結(jié)合具體應(yīng)用,認真加以體會和總結(jié)。因為DBMS在數(shù)據(jù)庫建立、運用和維護時對數(shù)據(jù)庫進行統(tǒng)一的管理和控制,包括數(shù)據(jù)的完整性、安全性,多用戶并發(fā)控制,故障恢復(fù)等等都由DBMS執(zhí)行。從而既簡化了應(yīng)用程序的編制,又大大減少了應(yīng)用程序的維護和修改。 還有,當(dāng)應(yīng)用邏輯改變,數(shù)據(jù)的邏輯結(jié)構(gòu)需要改變時,由于數(shù)據(jù)庫系統(tǒng)提供了數(shù)據(jù)與程序之間的獨立性。用一個通俗的比喻,使用了DBMS就如有了一個好參謀好助手,許多具體的技術(shù)工作都由這個助手來完成。 使用數(shù)據(jù)庫系統(tǒng)可以大大提高應(yīng)用開發(fā)的效率。 使用數(shù)據(jù)庫系統(tǒng)的好處很多,例如可以大大提高應(yīng)用開發(fā)的效率,方便用戶的使用,減輕數(shù)據(jù)庫系統(tǒng)管理人員維護的負擔(dān)等。著名的有美國IBM公司的DB2關(guān)系數(shù)據(jù)庫管理系統(tǒng)、IMS層次數(shù)據(jù)庫管理系統(tǒng);美國ORACLE公司的ORACLE關(guān)系數(shù)據(jù)庫管理系統(tǒng);SYBASE公司的SYBASE關(guān)系數(shù)據(jù)庫管理系統(tǒng);美國微軟公司的SQL SERVER關(guān)系數(shù)據(jù)庫管理系統(tǒng)等等。是計算機中的基礎(chǔ)軟件。DBMS主要功能包括數(shù)據(jù)定義功能、數(shù)據(jù)操縱功能、數(shù)據(jù)庫的運行管理功能、數(shù)據(jù)庫的建立和維護功能。 數(shù)據(jù)庫管理系統(tǒng): 數(shù)據(jù)庫管理系統(tǒng)(DBMS)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。希望讀者能夠從人們講話或文章的上下文中區(qū)分“數(shù)據(jù)庫系統(tǒng)”和“數(shù)據(jù)庫”。數(shù)據(jù)庫系統(tǒng)是一個人機系統(tǒng),數(shù)據(jù)庫是數(shù)據(jù)庫系統(tǒng)的一個組成部分。數(shù)據(jù)庫系統(tǒng)由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員構(gòu)成。每個數(shù)據(jù)庫中數(shù)據(jù)的都是按照某一種數(shù)據(jù)模型來組織的。 *解析: 簡單地講,數(shù)據(jù)數(shù)據(jù)庫數(shù)據(jù)具有永久儲存、有組織和可共享三個特點。 數(shù)據(jù)庫: 數(shù)據(jù)庫是長期儲存在計算機內(nèi)、有組織的、可共享的數(shù)據(jù)集合。500這個數(shù)字可以表示一件物品的價格是500元,也可以表示一個學(xué)術(shù)會議參加的人數(shù)有500人?,F(xiàn)在計算機能存儲和處理的對象十分廣泛,表示這些對象的 數(shù)據(jù)也越來越復(fù)雜。 *解析: 在現(xiàn)代計算機系統(tǒng)中數(shù)據(jù)的概念是廣義的。數(shù)據(jù)的種類有文字、圖形、圖象、聲音、正文等等。 B. 定義數(shù)據(jù)庫模式 D. 數(shù)據(jù)庫管理系統(tǒng)設(shè)計 選擇題答案: (1) C (2) A (3) D (4) C (5) B (6) A (7) C (8) A (9) C (10) D 二、簡答題 1.試述數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)的概念。 A. 模式與外模式的映射 B. 模式與內(nèi)模式之間的映射 C. 模式 D. 三層模式 9. 用戶或應(yīng)用程序看到的那部分局部邏輯結(jié)構(gòu)和特征的描述是( ),它是模式的邏輯子集。 A. 模式 B. 內(nèi)模式 C. 外模式 D. 用戶模式 7. 要保證數(shù)據(jù)庫的數(shù)據(jù)獨立性,需要修改的是( ) 。 A. 數(shù)據(jù)共享 B. 數(shù)據(jù)完整性 C. 數(shù)據(jù)冗余度高 D. 數(shù)據(jù)獨立性高 5. 數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)獨立性體現(xiàn)在( ) 。 A. DBS包括DB和DBMS B. DBMS包括DB和DBS C. DB包括DBS和DBMS D. DBS就是DB,也就是DBMS 3. 下面列出的數(shù)據(jù)庫管理技術(shù)發(fā)展的三個階段中,沒有專門的軟件對數(shù)據(jù)進行管理的是( )。數(shù)據(jù)庫系統(tǒng)概論習(xí)題集第一章 緒論 一、選擇題 1. DBS是采用了數(shù)據(jù)庫技術(shù)的計算機系統(tǒng),DBS是一個集合體,包含數(shù)據(jù)庫、計算機硬件、軟件和( ) 。 A. 系統(tǒng)分析員 B. 程序員 C. 數(shù)據(jù)庫管理員 D. 操作員 2. 數(shù)據(jù)庫(DB),數(shù)據(jù)庫系統(tǒng)(DBS)和數(shù)據(jù)庫管理系統(tǒng)(DBMS)之間的關(guān)系是( )。 I.人工管理階段 II.文件系統(tǒng)階段 III.?dāng)?shù)據(jù)庫階段 A. I 和 II B. 只有 II C. II 和 III D. 只有 I 4. 下列四項中,不屬于數(shù)據(jù)庫系統(tǒng)特點的是( ) 。 6. 描述數(shù)據(jù)庫全體數(shù)據(jù)的全局邏輯結(jié)構(gòu)和特性的是( ) 。 A. 模式與外模式 B. 模式與內(nèi)模式 C. 三層之間的兩種映射 D. 三層模式 8. 要保證數(shù)據(jù)庫的邏輯數(shù)據(jù)獨立性,需要修改的是( ) 。 B. 物理模式 C. 子模式 D. 內(nèi)模式 ( )不是DBA數(shù)據(jù)庫管理員的職責(zé) 。 數(shù)據(jù): 描述事物的符號記錄稱為數(shù)據(jù)。數(shù)據(jù)與其語義是不可分的。早期的計算機系統(tǒng)主要用于科學(xué)計算,處理的數(shù)據(jù)是整數(shù)、實數(shù)、浮點數(shù)等傳統(tǒng)數(shù)學(xué)中的數(shù)據(jù)等。 數(shù)據(jù)與其語義是不可分的。還可以表示一袋奶粉重500克。數(shù)據(jù)庫中的數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存,具有較小的冗余度、較高的數(shù)據(jù)獨立性和易擴展性,并可為各種用戶共享。 數(shù)據(jù)模型是數(shù)據(jù)庫的核心概念。 數(shù)據(jù)庫系統(tǒng): 數(shù)據(jù)庫系統(tǒng)(DBS)是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成。 *解析: 數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫是兩個概念。但是在日常工作中人們常常把把數(shù)據(jù)庫系統(tǒng)簡稱為數(shù)據(jù)庫。 不要引起混淆。用于科學(xué)地組織和存儲數(shù)據(jù)、高效地獲取和維護數(shù)據(jù)。 *解析: DBMS是一個大型復(fù)雜的軟件系統(tǒng)。目前,專門研制DBMS的廠商及其研制的DBMS產(chǎn)品很多。 2.使用數(shù)據(jù)庫系統(tǒng)有什么好處? 使用數(shù)據(jù)庫系統(tǒng)的好處是由數(shù)據(jù)庫管理系統(tǒng)的特點或優(yōu)點決定的。 為什么有這些好處,可以結(jié)合第5題來回答。因為在數(shù)據(jù)庫系統(tǒng)中應(yīng)用程序不必考慮數(shù)據(jù)的定義、存儲和數(shù)據(jù)存取的具體路徑,這些工作都由DBMS來完成。開發(fā)人員就可以專注于應(yīng)用邏輯的設(shè)計而不必為管理數(shù)據(jù)的許許多多復(fù)雜的細節(jié)操心。數(shù)據(jù)邏輯結(jié)構(gòu)的改變是DBA的責(zé)任,開發(fā)人員不必修改應(yīng)用程序,或者只需要修改很少的應(yīng)用程序。 使用數(shù)據(jù)庫系統(tǒng)可以減輕數(shù)據(jù)庫系統(tǒng)管理人員維護系統(tǒng)的負擔(dān)。 總之,使用數(shù)據(jù)庫系統(tǒng)的優(yōu)點是很多的,既便于數(shù)據(jù)的集中管理,控制數(shù)據(jù)冗余,可以提高數(shù)據(jù)的利用率和一致性,又有利于應(yīng)用程序的開發(fā)和維護。 ?。常囀鑫募到y(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別和聯(lián)系。 數(shù)據(jù)庫系統(tǒng)面向現(xiàn)實世界,共享性高、冗余度小,具有高度的物理獨立性和一定的邏輯獨立性,整體結(jié)構(gòu)化,用數(shù)據(jù)模型描述,由數(shù)據(jù)庫管理系統(tǒng)提供數(shù)據(jù)安全性、完整性、并發(fā)控制和恢復(fù)能力。 文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的聯(lián)系是: 文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)都是計算機系統(tǒng)中管理數(shù)據(jù)的軟件。但是DBMS是在操作系統(tǒng)的基礎(chǔ)上實現(xiàn)的。 讀者可以參考書中第十一章《數(shù)據(jù)庫管理系統(tǒng)》。因為DBMS的實現(xiàn)與操作系統(tǒng)中的文件系統(tǒng)是緊密相關(guān)的。所以在DBMS實現(xiàn)中數(shù)據(jù)庫物理組織的基本問題是如何利用或如何選擇操作系統(tǒng)提供的基本的文件組織方法。 ?。矗e出適合用文件系統(tǒng)而不是數(shù)據(jù)庫系統(tǒng)的例子;再舉出適合用數(shù)據(jù)庫系統(tǒng)的應(yīng)用例子。適用于文件系統(tǒng)而不是數(shù)據(jù)庫系統(tǒng)的應(yīng)用例子 數(shù)據(jù)的備份,軟件或應(yīng)用程序使用過程中的臨時數(shù)據(jù)存儲一般使用文件比較合適。 如一個工廠的管理信息系統(tǒng)(其中會包括許多子系統(tǒng),如庫存管理系統(tǒng)、物資采購系統(tǒng)、作業(yè)調(diào)度系統(tǒng)、設(shè)備管理系統(tǒng)、人事管理系統(tǒng)等等),還比如學(xué)校的學(xué)生管理系統(tǒng),人事管理系統(tǒng),圖書館的圖書管理系統(tǒng)等等都適合用數(shù)據(jù)庫系統(tǒng)。 ?。担囀鰯?shù)據(jù)庫系統(tǒng)的特點。 *解析:注意這里“整體”兩個字。不僅數(shù)據(jù)是結(jié)構(gòu)化的,而且數(shù)據(jù)的存取單位即一次可以存取數(shù)據(jù)的大小也很靈活。而在文件系統(tǒng)中,數(shù)據(jù)的存取單位只有一個:記錄。 二、數(shù)據(jù)的共享性高,冗余度低,易擴充 數(shù)據(jù)庫的數(shù)據(jù)不再面向某個應(yīng)用而是面向整個系統(tǒng),因此可以被多個用戶、多個應(yīng)用、用多種不同的語言共享使用。 *解析: 數(shù)據(jù)共享可以大大減少數(shù)據(jù)冗余,節(jié)約存儲空間,同時還能夠避免數(shù)據(jù)之間的不相容性與不一致性??梢哉f數(shù)據(jù)是某個應(yīng)用的“私有資源”。 我們可以取整體數(shù)據(jù)的各種子集用于不同的應(yīng)用系統(tǒng),當(dāng)應(yīng)用需求改變或增加時,只要重新選取不同的子集或加上一部分數(shù)據(jù)便可以滿足新的需求。 數(shù)據(jù)庫管理系統(tǒng)的模式結(jié)構(gòu)和二級映象功能保證了數(shù)據(jù)庫中的數(shù)據(jù)具有很高的物理獨立性和邏輯獨立性。數(shù)據(jù)獨立性是指數(shù)據(jù)和程序相互不依賴。數(shù)據(jù)與程序的獨立,把數(shù)據(jù)的定義從程序中分離出去,加上數(shù)據(jù)的存取又由DBMS負責(zé),簡化了應(yīng)用程序的編制,大大減少了應(yīng)用程序的維護和修改。為此,DBMS必須提供統(tǒng)一的數(shù)據(jù)控制功能,包括數(shù)據(jù)的安全性保護,數(shù)據(jù)的完整性檢查,并發(fā)控制和數(shù)據(jù)庫恢復(fù)。 下面我們可以得到“什么是數(shù)據(jù)庫”的一個定義: 數(shù)據(jù)庫是長期存儲在計算機內(nèi)有組織的大量的共享的數(shù)據(jù)集合。DBMS在數(shù)據(jù)庫建立、運用和維護時對數(shù)據(jù)庫進行統(tǒng)一控制,以保證數(shù)據(jù)的完整性、安全性,并在多用戶同時使用數(shù)據(jù)庫時進行并發(fā)控制,在發(fā)生故障后對系統(tǒng)進行恢復(fù)。 ?。叮?dāng)?shù)據(jù)庫管理系統(tǒng)的主要功能有哪些? ?、贁?shù)據(jù)庫定義功能; ?、跀?shù)據(jù)存取功能; ?、蹟?shù)據(jù)庫運行管理; ④數(shù)據(jù)庫的建立和維護功能。 數(shù)據(jù)模型是數(shù)據(jù)庫中用來對現(xiàn)實世界進行抽象的工具,是數(shù)據(jù)庫中用于提供信息表示和操作手段的形式構(gòu)架。這些概念精確地描述系統(tǒng)的靜態(tài)特性、動態(tài)特性和完整性約束條件。 ①數(shù)據(jù)結(jié)構(gòu):是所研究的對象類型的集合,是對系統(tǒng)的靜態(tài)特性的描述。 ③數(shù)據(jù)的約束條件:是完整性規(guī)則的集合,完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。同學(xué)們必須通過《概論》的學(xué)習(xí)真正掌握 數(shù)據(jù)模型的概念和作用。任何一個DBMS都以某一個數(shù)據(jù)模型為基礎(chǔ),或者說支持某一個數(shù)據(jù)模型。根據(jù)模型應(yīng)用的不同目的,可以將模型分成兩類或說兩個層次:一是概念模型,是按用戶的觀點來對數(shù)據(jù)和信息建模,用于信息世界的建模,強調(diào)語義表達能力,概念簡單清晰;另一是數(shù)據(jù)模型,是按計算機系統(tǒng)的觀點對數(shù)據(jù)建模,用于機器世界,人們可以用它定義、操縱數(shù)據(jù)庫中的數(shù)據(jù)。 ?。福囀龈拍钅P偷淖饔?。概念模型用于信息世界的建模,是現(xiàn)實世界到信息世界的第一層抽象,是數(shù)據(jù)庫設(shè)計人員進行數(shù)據(jù)庫設(shè)計的有力工具,也是數(shù)據(jù)庫設(shè)計人員和用戶之間進行交流的語言。 實體型:具有相同屬性的實體具有相同的特征和性質(zhì),用實體名及其屬性名集合來抽象和刻畫同類實體稱為實體型。 屬性:實體所具有的某一特性,一個實體可由若干個屬性來刻畫。 實體聯(lián)系圖:ER圖提供了表示實體型、屬性和聯(lián)系的