數據庫系統概論(第五版) 王珊 第一章課後習題答案

1 .試述數據、數據庫、數據庫系統、數據庫管理系統的概念。

答:

( l )數據( Data ) :描述事物的符號記錄稱爲數據。數據的種類有數字、文字、圖形、圖像、聲音、正文等。數據與其語義是不可分的。

( 2 )數據庫( DataBase ,簡稱 DB ) :數據庫是長期儲存在計算機內的、有組織的、可共享的數據集合。數據庫中的數據按一定的數據模型組織、描述和儲存,具有較小的冗餘度、較高的數據獨立性和易擴展性,並可爲各種用戶共享。

( 3 )數據庫系統( DataBas 。 Sytem ,簡稱 DBS ) :數據庫系統是指在計算機系統中引入數據庫後的系統構成,一般由數據庫、數據庫管理系統(及其開發工具)、應用系統、數據庫管理員構成。解析數據庫系統和數據庫是兩個概念。數據庫系統是一個人一機系統,數據庫是數據庫系統的一個組成部分。

( 4 )數據庫管理系統( DataBase Management sytem ,簡稱 DBMs ) :數據庫管理系統是位於用戶與操作系統之間的一層數據管理軟件,用於科學地組織和存儲數據、高效地獲取和維護數據。 DBMS 的主要功能包括數據定義功能、數據操縱功能、數據庫的運行管理功能、數據庫的建立和維護功能。解析 DBMS 是一個大型的複雜的軟件系統,是計算機中的基礎軟件

2 .使用數據庫系統有什麼好處?

答:

使用數據庫系統的好處是由數據庫管理系統的特點或優點決定的。使用數據庫系統的好處很多,例如,可以大大提高應用開發的效率,方便用戶的使用,減輕數據庫系統管理人員維護的負擔,等等。使用數據庫系統可以大大提高應用開發的效率。因爲在數據庫系統中應用程序不必考慮數據的定義、存儲和數據存取的具體路徑,這些工作都由 DBMS 來完成。開發人員就可以專注於應用邏輯的設計,而不必爲數據管理的許許多多複雜的細節操心。還有,當應用邏輯改變,數據的邏輯結構也需要改變時,由於數據庫系統提供了數據與程序之間的獨立性,數據邏輯結構的改變是 DBA 的責任,開發人員不必修改應用程序,或者只需要修改很少的應用程序,從而既簡化了應用程序的編制,又大大減少了應用程序的維護和修改。使用數據庫系統可以減輕數據庫系統管理人員維護系統的負擔。因爲 DBMS 在數據庫建立、運用和維護時對數據庫進行統一的管理和控制,包括數據的完整性、安全性、多用戶併發控制、故障恢復等,都由 DBMS 執行。總之,使用數據庫系統的優點是很多的,既便於數據的集中管理,控制數據冗餘,提高數據的利用率和一致性,又有利於應用程序的開發和維護。

3 .試述文件系統與數據庫系統的區別和聯繫。

答:

文件系統與數據庫系統的區別是:文件系統面向某一應用程序,共享性差,冗餘度大,數據獨立性差,記錄內有結構,整體無結構,由應用程序自己控制。數據庫系統面向現實世界,共享性高,冗餘度小,具有較高的物理獨立性和一定的邏輯獨立性,整體結構化,用數據模型描述,由數據庫管理系統提供數據的安全性、完整性、併發控制和恢復能力。

文件系統與數據庫系統的聯繫是:文件系統與數據庫系統都是計算機系統中管理數據的軟件。解析文件系統是操作系統的重要組成部分;而 DBMS 是獨立於操作系統的軟件。但是 DBMS 是在操作系統的基礎上實現的;數據庫中數據的組織和存儲是通過操作系統中的文件系統來實現的。

 

4 .舉出適合用文件系統而不是數據庫系統的例子;再舉出適合用數據庫系統的應用例子。答 :

( l )適用於文件系統而不是數據庫系統的應用例子數據的備份、軟件或應用程序使用過程中的臨時數據存儲一般使用文件比較合適。早期功能比較簡單、比較固定的應用系統也適合用文件系統。

 ( 2 )適用於數據庫系統而非文件系統的應用例子目前,幾乎所有企業或部門的信息系統都以數據庫系統爲基礎,都使用數據庫。例如,一個工廠的管理信息系統(其中會包括許多子系統,如庫存管理系統、物資採購系統、作業調度系統、設備管理系統、人事管理系統等),學校的學生管理系統,人事管理系統,圖書館的圖書管理系統,等等,都適合用數據庫系統。希望讀者能舉出自己瞭解的應用例子。

 

5 .試述數據庫系統的特點。

答:

數據庫系統的主要特點有:

 ( l )數據結構化數據庫系統實現整體數據的結構化,這是數據庫的主要特徵之一,也是數據庫系統與文件系統的本質區別。解析注意這裏的“整體’夕兩個字。

( 2 )數據的共享性高,冗餘度低,易擴充數據庫的數據不再面向某個應用而是面向整個系統,因此可以被多個用戶、多個應用以多種不同的語言共享使用。由於數據面向整個系統,是有結構的數據,不僅可以被多個應用共享使用,而且容易增加新的應用,這就使得數據庫系統彈性大,易於擴充。解析數據共享可以大大減少數據冗餘,節約存儲空間,同時還能夠避免數據之間的不相容性與不一致性。

( 3 )數據獨立性高數據獨立性包括數據的物理獨立性和數據的邏輯獨立性。數據庫管理系統的模式結構和二級映像功能保證了數據庫中的數據具有很高的物理獨立性和邏輯獨立性。

( 4 )數據由 DBMS 統一管理和控制數據庫的共享是併發的共享,即多個用戶可以同時存取數據庫中的數據甚至可以同時存取數據庫中同一個數據。

 

6 .數據庫管理系統的主要功能有哪些?

答:

( l )數據庫定義功能;

( 2 )數據存取功能;

( 3 )數據庫運行管理;

( 4 )數據庫的建立和維護功能。

7 .什麼是概念模型?試述概念模型的作用。

答:概念模型,也稱信息模型,是按用戶的觀點來對數據和信息建模,主要用於數據庫設計。

概念模型實際上是現實世界到機器世界的一箇中間層次。概念模型用於信息世界的建模,是現實世界到信息世界的第一層抽象,是數據庫設計人員進行數據庫設計的有力工具,也是數據庫設計人員和用戶之間進行交流的語言。

8.定義並解釋概念模型中以下術語:實體,實體型,實體集,實體之間的聯繫。

答:

實體:客觀存在並可以相互區分的事物叫實體。實體型:具有相同屬性的實體具有相同的特徵和性質,用實體名及其屬性名集合來抽象和刻畫同類實體,稱爲實體型。實體集:同型實體的集合稱爲實體集;實體之間的聯繫:通常是指不同實體型的實體集之間的聯繫,實體之間的聯繫有一對一,一對多和多對多等多種類型。

 

9 .試述數據模型的概念、數據模型的作用和數據模型的三個要素。

答:

數據模型是數據庫中用來對現實世界進行抽象的工具,是數據庫中用於提供信息表示和操作手段的形式構架。一般地講,數據模型是嚴格定義的概念的集合。這些概念精確描述了系統的靜態特性、動態特性和完整性約束條件。因此數據模型通常由數據結構、數據操作和完整性約束三部分組成。

 ( l )數據結構:是所研究的對象類型的集合,是對系統靜態特性的描述。

 ( 2 )數據操作:是指對數據庫中各種對象(型)的實例(值)允許進行的操作的集合,包括操作及有關的操作規則,是對系統動態特性的描述。

 ( 3 )數據的約束條件:是一組完整性規則的集合。完整性規則是給定的數據模型中數據及其聯繫所具有的制約和依存規則,用以限定符合數據模型的數據庫狀態以及狀態的變化,以保證數據的正確、有效、相容。解析數據模型是數據庫系統中最重要的概念之一。必須通過 《 概論 》 的學習真正掌握數據模型的概念和作用。數據模型是數據庫系統的基礎。任何一個 DBMS 都以某一個數據模型爲基礎,或者說支持某一個數據模型。數據庫系統中,模型有不同的層次。根據模型應用的不同目的,可以將模型分成兩類或者說兩個層次:一類是概念模型,是按用戶的觀點來對數據和信息建模,用於信息世界的建模,強調語義表達能力,概念簡單清晰;另一類是數據模型,是按計算機系統的觀點對數據建模,用於機器世界,人們可以用它定義、操縱數據庫中的數據,一般需要有嚴格的形式化定義和一組嚴格定義了語法和語義的語言,並有一些規定和限制,便於在機器上實現。

10.試述層次模型的概念,舉出三個層次模型的實例。

答:

 ( l )教員學生層次數據庫模型

( 2 )行政機構層次數據庫模型

( 3 )行政區域層次數據庫模型

11.試述網狀模型的概念,舉出三個網狀模型的實例。

答:

滿足下面兩個條件的基本層次聯繫集合爲網狀模型。

 ( l )允許一個以上的結點無雙親; ( 2 )一個結點可以有多於一個的雙親。

實例 1 :

實例 2 :

實例 3 :

12 .試述網狀、層次數據庫的優缺點。

答:

層次模型的優點主要有: ( l )模型簡單,對具有一對多層次關係的部門描述非常自然、直觀,容易理解,這是層次數據庫的突出優點; ( 2 )用層次模型的應用系統性能好,特別是對於那些實體間聯繫是固定的且預先定義好的應用,採用層次模型來實現,其性能優於關係模型; ( 3 )層次數據模型提供了良好的完整性支持。

層次模型的缺點主要有: ( l )現實世界中很多聯繫是非層次性的,如多對多聯繫、一個結點具有多個雙親等,層次模型不能自然地表示這類聯繫,只能通過引入冗餘數據或引入虛擬結點來解決; ( 2 )對插入和刪除操作的限制比較多; ( 3 )查詢子女結點必須通過雙親結點。

網狀數據模型的優點主要有: ( l )能夠更爲直接地描述現實世界,如一個結點可以有多個雙親; ( 2 )具有良好的性能,存取效率較高。

網狀數據模型的缺點主要有: ( l )結構比較複雜,而且隨着應用環境的擴大,數據庫的結構就變得越來越複雜,不利於最終用戶掌握; ( 2 )其 DDL 、 DML 語言複雜,用戶不容易使用。由於記錄之間聯繫是通過存取路徑實現的,應用程序在訪問數據時必須選擇適當的存取路徑。因此,用戶必須瞭解系統結構的細節,加重了編寫應用程序的負擔。

13.試述關係模型的概念,定義並解釋以下術語: ( l )關係( 2 )屬性( 3 )域( 4 )元組 ( 5 )主碼( 6 )分量( 7 )關係模式

答:

關係模型由關係數據結構、關係操作集合和關係完整性約束三部分組成。在用戶觀點下,關係模型中數據的邏輯結構是一張二維表,它由行和列組成。 ( l )關係:一個關係對應通常說的一張表; ( 2 )屬性:表中的一列即爲一個屬性; ( 3 )域:屬性的取值範圍; ( 4 )元組:表中的一行即爲一個元組; ( 5 )主碼:表中的某個屬性組,它可以惟一確定一個元組; ( 6 )分量:元組中的一個屬性值; ( 7 )關係模式:對關係的描述,一般表示爲關係名(屬性 1 ,屬性 2 , … ,屬性 n )

14 .試述關係數據庫的特點。

答:

關係數據模型具有下列優點: ( l )關係模型與非關係模型不同,它是建立在嚴格的數學概念的基礎上的。 ( 2 )關係模型的概念單一,無論實體還是實體之間的聯繫都用關係表示,操作的對象和操作的結果都是關係,所以其數據結構簡單、清晰,用戶易懂易用。 ( 3 )關係模型的存取路徑對用戶透明,從而具有更高的數據獨立性、更好的安全保密性,也簡化了程序員的工作和數據庫開發建立的工作。當然,關係數據模型也有缺點,其中最主要的缺點是,由於存取路徑對用戶透明,查詢效率往往不如非關係數據模型。因此爲了提高性能,必須對用戶的查詢請求進行優化,增加了開發數據庫管理系統的難度。

15.試述數據庫系統三級模式結構,這種結構的優點是什麼?

答:

數據庫系統的三級模式結構由外模式、模式和內模式組成。(參見書上圖 1 . 29 ) 外模式,亦稱子模式或用戶模式,是數據庫用戶(包括應用程序員和最終用戶)能夠看見和使用的局部數據的邏輯結構和特徵的描述,是數據庫用戶的數據視圖,是與某一應用有關的數據的邏輯表示。模式,亦稱邏輯模式,是數據庫中全體數據的邏輯結構和特徵的描述,是所有用戶的公共數據視圖。模式描述的是數據的全局邏輯結構。外模式涉及的是數據的局部邏輯結構,通常是模式的子集。內模式,亦稱存儲模式,是數據在數據庫系統內部的表示,即對數據的物理結構和存儲方式的描述。數據庫系統的三級模式是對數據的三個抽象級別,它把數據的具體組織留給 DBMs 管理,使用戶能邏輯抽象地處理數據,而不必關心數據在計算機中的表示和存儲。爲了能夠在內部實現這三個抽象層次的聯繫和轉換,數據庫系統在這三級模式之間提供了兩層映像:外模式/模式映像和模式/內模式映像。正是這兩層映像保證了數據庫系統中的數據能夠具有較高的邏輯獨立性和物理獨立性。

16 .定義並解釋以下術語:模式、外模式、內模式、 DDL 、 DML 。

模式、外模式、內模式,亦稱邏輯模式,是數據庫中全體數據的邏輯結構和特徵的描述,是所有用戶的公共數據視圖。模式描述的是數據的全局邏輯結構。外模式涉及的是數據的局部邏輯結構,通常是模式的子集。內模式,亦稱存儲模式,是數據在數據庫系統內部的表示,即對數據的物理結構和存儲方式的描述。 DDL :數據定義語言,用來定義數據庫模式、外模式、內模式的語言。 DML :數據操縱語言,用來對數據庫中的數據進行查詢、插入、刪除和修改的語句。

17.什麼叫數據與程序的物理獨立性?什麼叫數據與程序的邏輯獨立性?爲什麼數據庫系統具有數據與程序的獨立性?

答:

數據與程序的邏輯獨立性:當模式改變時(例如增加新的關係、新的屬性、改變屬性的數據類型等),由數據庫管理員對各個外模式/模式的映像做相應改變,可以使外模式保持不變。應用程序是依據數據的外模式編寫的,從而應用程序不必修改,保證了數據與程序的邏輯獨立性,簡稱數據的邏輯獨立性。數據與程序的物理獨立性:當數據庫的存儲結構改變了,由數據庫管理員對模式/內模式映像做相應改變,可以使模式保持不變,從而應用程序也不必改變,保證了數據與程序的物理獨立性,簡稱數據的物理獨立性。數據庫管理系統在三級模式之間提供的兩層映像保證了數據庫系統中的數據能夠具有較高的邏輯獨立性和物理獨立性。

18 .試述數據庫系統的組成。

答:

數據庫系統一般由數據庫、數據庫管理系統(及其開發工具)、應用系統、數據庫管理員和用戶構成。

19 .數據庫管理員、系統分析員、數據庫設計人員、應用程序員的職責是什麼?

答:

數據庫管理員的職責:(1)決定數據庫中的信息內容和結構;

(2)決定數據庫的存儲結構和存取策略;

(3)定義數據的安全性要求和完整性約束條件;

(4)監控數據庫的使用和運行;

(5)數據庫的改進和重組、重構。

系統分析員負責應用系統的需求分析和規範說明,系統分析員要和用戶及 DBA 相結合,確定系統的硬件、軟件配置,並參與數據庫系統的概要設計。數據庫設計人員負責數據庫中數據的確定、數據庫各級模式的設計。數據庫設計人員必須參加用戶需求調查和系統分析,然後進行數據庫設計。在很多情況下,數據庫設計人員就由數據庫管理員擔任。應用程序員負責設計和編寫應用系統的程序模塊,並進行調試和安裝。

發佈了57 篇原創文章 · 獲贊 122 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章