數(shù)據(jù)庫系統(tǒng)與原理_第1頁
數(shù)據(jù)庫系統(tǒng)與原理_第2頁
數(shù)據(jù)庫系統(tǒng)與原理_第3頁
數(shù)據(jù)庫系統(tǒng)與原理_第4頁
數(shù)據(jù)庫系統(tǒng)與原理_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數(shù)據(jù)管理技術(shù)的產(chǎn)生和發(fā)展數(shù)據(jù)庫技術(shù)是應(yīng)數(shù)據(jù)管理任務(wù)的需要而產(chǎn) 生的。數(shù)據(jù)的處理是指對各種數(shù)據(jù)進行收集、存 儲、加工和傳播的一系列活動的總和。 數(shù)據(jù)管理則是指對數(shù)據(jù)進行分類、組織、 編碼、存儲、檢索和維護,它是數(shù)據(jù)處理 的中心問題。數(shù)據(jù)管理技術(shù)經(jīng)歷了人工管理、文件系統(tǒng)、 數(shù)據(jù)庫系統(tǒng)三個階段。人工管理階段(20世紀50年代中期以前) 特點:(1)數(shù)據(jù)不保存(2)應(yīng)用程序管理 數(shù)據(jù),數(shù)據(jù)需要由應(yīng)用程序自己管理,沒 有相應(yīng)的軟件系統(tǒng)負責數(shù)據(jù)的管理工作。(3)數(shù)據(jù)不共享。(4)數(shù)據(jù)不具有獨立性文件系統(tǒng)階段(50年代后期一60年代中期) 特點:(1)數(shù)據(jù)可長期保存(2)由文件系統(tǒng)管理數(shù)據(jù)(3)數(shù)據(jù)共享性差

2、,冗余度大(4)數(shù)據(jù)獨立性差 不容易擴充; 數(shù)據(jù)與程序之間仍缺乏獨立性;是一個無 彈性的無結(jié)構(gòu)的數(shù)據(jù)集合。數(shù)據(jù)庫系統(tǒng)階段(60年代一 )特點:(1) 數(shù)據(jù)結(jié)構(gòu)化(2)數(shù)據(jù)的共享性高,冗余度 低,易擴充(3)數(shù)據(jù)獨立性高物理獨立性是指用戶的應(yīng)用程序與 存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立 的。邏輯獨立性是指用戶的應(yīng)用程序與 數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨立的,數(shù)據(jù)獨立性是由DBMS的二級映象功能 來保證的。(4)數(shù)據(jù)由DBMS統(tǒng)一管理和控制數(shù)據(jù)庫的共享是并發(fā)的 (Concurrency)。DBMS還必須提供的數(shù)據(jù)控制功能:(1)數(shù)據(jù)的安全性(2)數(shù)據(jù)的完整性、正確性、有效性和 相容性(3)并發(fā)控制(4

3、)數(shù)據(jù)庫恢復數(shù)據(jù)庫技術(shù)的發(fā)展是沿著數(shù)據(jù)模型的主線 展開的。數(shù)據(jù)模型是現(xiàn)實世界數(shù)據(jù)特征的抽象。數(shù)據(jù)庫中用數(shù)據(jù)模型這個工具來抽象、 表示和處理現(xiàn)實世界中的數(shù)據(jù)和信息。通 俗地講數(shù)據(jù)模型就是現(xiàn)實世界的模擬。數(shù)據(jù)模型應(yīng)滿足三方面要求:一是能比較真實地模擬現(xiàn)實世界;二 是容易為人所理解;三是便于在計算機上 實現(xiàn)。根據(jù)應(yīng)用的不同目的,數(shù)據(jù)模型劃分為兩 類:概念模型(信息模型) 按用戶的觀 點來對數(shù)據(jù)和信息建模;主要用于數(shù)據(jù)庫 設(shè)計。數(shù)據(jù)模型按計算機系統(tǒng)的觀點對數(shù)據(jù)建模; 主要包括網(wǎng)狀模型、層次模型、關(guān)系模型 等,主要用于DBMS的實現(xiàn)。數(shù)據(jù)模型的三個要素數(shù)據(jù)結(jié)構(gòu)是所研究的對象類型的 集合。數(shù)據(jù)操作 是指對

4、數(shù)據(jù)庫中各種 對象(型)的實例(值)允許執(zhí)行的操作的集 合,包括操作及有關(guān)的操作規(guī)則。數(shù)據(jù)庫 主要有檢索和更新(包括插入、刪除、修改) 兩大類操作。數(shù)據(jù)操作是對系統(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ù)的正確、有效、相 容。(1)實體客觀存在并可相互區(qū)別的事物稱為實 體。(2)屬性 實體所具有的某一特性稱 為屬性。一個實體可以由若干個屬性來刻 畫。(3)碼 唯一標識實體的屬性集稱 為碼。(4)域?qū)傩缘娜≈捣秶Q為該屬性的域。(5)實體型用實體名及其屬

5、性集合來抽象和刻畫同類實體,稱為實體型。(6)實體集同型實體的集合稱為實體集。(7)聯(lián)系 在現(xiàn)實世界中,事物內(nèi)部以及事物之間是有聯(lián)系的,這些聯(lián)系在信息 世界中反映為實體(型)內(nèi)部的聯(lián)系和實體 (型)之間的聯(lián)系。實體內(nèi)部的聯(lián)系通常是 指組成實體的各屬性之間的聯(lián)系。實體之 間的聯(lián)系通常是指不同實體集之間的聯(lián) 系。兩個實體型之間的聯(lián)系可以分為三類:一對一聯(lián)系(1:1),一對多聯(lián)系(1:n), 多對多聯(lián)系(m:n),數(shù)據(jù)模型數(shù)據(jù)庫領(lǐng)域中最常用的數(shù)據(jù)模型有四種 層次模型, 網(wǎng)狀模型 關(guān)系模型 面向?qū)ο竽P虳BMS提供內(nèi)模式描述語言(內(nèi)模式DDL,或者存儲模式DDL)來嚴格地定義 內(nèi)模式。優(yōu)點:數(shù)據(jù)庫的二

6、級映象保證了數(shù)據(jù)庫外模 式的穩(wěn)定性,從而從底層保證了應(yīng)用程序 的穩(wěn)定性。數(shù)據(jù)和程序之間的獨立性使得數(shù)據(jù)的 定義和描述可以從應(yīng)用程序中分離出去。 另外,由于數(shù)據(jù)的存取由DBMS管理,用戶 不必考慮存取路徑等細節(jié),從而簡化了應(yīng) 用程序的編制,大大減少了應(yīng)用程序的維 護和修改。層次數(shù)據(jù)模型的優(yōu)缺點優(yōu)點:優(yōu)點:很少幾條命令就能操縱數(shù)據(jù)庫,使 用簡單;對于實體間聯(lián)系是固定的,且預(yù)先 定義好的應(yīng)用系統(tǒng),采用層次模型性能優(yōu) 于關(guān)系模型;良好的完整性支持;缺點:對于多對多聯(lián)系,通過引入冗余數(shù) 據(jù)解決;對插入和刪除操作限制多;查詢子女結(jié)點必須通過雙親結(jié)點; 網(wǎng)狀數(shù)據(jù)模型的優(yōu)缺點優(yōu)點: 能夠更為直接地描述現(xiàn)實世界

7、; 具有良好的性能,存取效率較高;其DDL (數(shù)據(jù)定義語言)語言極其復 雜;數(shù)據(jù)獨立性差;關(guān)系數(shù)據(jù)庫的優(yōu)缺點優(yōu)點:建立在嚴格的數(shù)學概念的基礎(chǔ)上的; 關(guān)系模型的概念單一;關(guān)系模型的存取路徑對用戶透明, 數(shù)據(jù)獨立性高,安全保密性好; 缺點:查詢效率不如非關(guān)系數(shù)據(jù)模型;數(shù)據(jù)庫管理系統(tǒng)它是數(shù)據(jù)庫系統(tǒng)的核心,是為數(shù)據(jù) 庫建立、使用和維護而配置的軟件; 建立在操作系統(tǒng)的基礎(chǔ)上于操作系 統(tǒng)與用戶之間的一層數(shù)據(jù)管理軟 件;負責對數(shù)據(jù)進行同一的管理和 控制;DBMS的功能數(shù)據(jù)定義;數(shù)據(jù)操縱;數(shù)據(jù)庫運行 管理;數(shù)據(jù)組織、存儲和管理;數(shù)據(jù)庫的建立和維護;數(shù)據(jù)通道接 口;DBMS的組成:數(shù)據(jù)定義語言及其翻譯 處理程序

8、;數(shù)據(jù)操縱語言及其編譯(或解釋) 程序;數(shù)據(jù)庫運行控制程序;實用程序1:實體:客觀存在并可相互區(qū)別的 事物。2:模式:數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié) 構(gòu)和特征的描述,是所有用戶的公共數(shù)據(jù) 視圖。3:候選碼:關(guān)系中能唯一地標識一個 元組的屬性或?qū)傩越M。4:函數(shù)依賴:設(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。5:事務(wù):用戶定義的一個數(shù)據(jù)庫操作 序列,這些操作要么全做,要么全不做, 是一個不可分割的工作單位。數(shù)據(jù)庫系統(tǒng)的特點:數(shù)據(jù)結(jié)構(gòu)化

9、,數(shù)據(jù)共享性高、冗余度低、 易擴充,數(shù)據(jù)獨立性高,數(shù)據(jù)由DBMS統(tǒng)一 管理和控制。查詢優(yōu)化的一般準則:選擇運算應(yīng)盡可能先做。在執(zhí)行連接前對關(guān)系適當?shù)仡A(yù)處理。把投影運算和選擇運算同時進行把投影同其前或其后的雙目運算結(jié)合起來。把某些選擇同在它前面要執(zhí)行的笛 卡爾積結(jié)合起來成為一個連接運算。找出公共子表達式。:數(shù)據(jù)庫設(shè)計的特點:數(shù)據(jù)庫建設(shè)是 硬件、軟件、干件的結(jié)合,把結(jié)構(gòu)設(shè)計和 行為設(shè)計密切結(jié)合起來。事務(wù)的四個特性:原子性、一致性、 隔離性和持續(xù)性。數(shù)據(jù)庫數(shù)據(jù)具有永久存儲有組 織和可共享三個基本特點。試述數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫系統(tǒng)、數(shù) 據(jù)庫管理系統(tǒng)的概念。數(shù)據(jù):描述事物的符號記錄稱為數(shù)據(jù)。數(shù) 據(jù)庫:數(shù)

10、據(jù)庫是長期儲存在計算機內(nèi)、有 組織的、可共享的數(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)(及其開 發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員構(gòu)成。 數(shù)據(jù)庫管理系統(tǒng):數(shù)據(jù)庫管理系統(tǒng)(DBMS) 是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管 理軟件。DBMS主要功能包括數(shù)據(jù)定義功 能、數(shù)據(jù)操縱功能、數(shù)據(jù)庫的運行管理功 能、數(shù)據(jù)庫的建立和維護功能。使用數(shù)據(jù)庫系統(tǒng)有什么好處?使用數(shù)據(jù)庫系統(tǒng)的好處很多,例如可以 大大提高應(yīng)

11、用開發(fā)的效率,方便用戶的使 用,減輕數(shù)據(jù)庫系統(tǒng)管理人員維護的負擔 等。總之,使用數(shù)據(jù)庫系統(tǒng)的優(yōu)點是很多 的,既便于數(shù)據(jù)的集中管理,控制數(shù)據(jù)冗 余,可以提高數(shù)據(jù)的利用率和一致性,又 有利于應(yīng)用程序的開發(fā)和維護。.試述文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別 和聯(lián)系。區(qū)別:文件系統(tǒng)面向某一應(yīng)用程序,共 享性差、冗余度大,獨立性差,紀錄內(nèi)有 結(jié)構(gòu)、整體無結(jié)構(gòu),應(yīng)用程序自己控制。 數(shù)據(jù)庫系統(tǒng)面向現(xiàn)實世界,共享性高、冗 余度小,具有高度的物理獨立性和一定的 邏輯獨立性,整體結(jié)構(gòu)化,用數(shù)據(jù)模型描 述,由數(shù)據(jù)庫管理系統(tǒng)提供數(shù)據(jù)安全性、 完整性、并發(fā)控制和恢復能力.試述數(shù)據(jù)模型的概念、數(shù)據(jù)模型的作 用和數(shù)據(jù)模型的三個要素。

12、數(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ù)操作和完整性約束三部 分組成。數(shù)據(jù)結(jié)構(gòu):是所研究的對象 類型的集合,是對系統(tǒng)的靜態(tài)特性的描述。 數(shù)據(jù)操作:是指對數(shù)據(jù)庫中各種對象 (型)的實例(值)允許進行的操作的集 合,包括操作及有關(guān)的操作規(guī)則,是對系 統(tǒng)動態(tài)特性的描述。數(shù)據(jù)的約束條件: 是完整性規(guī)則的集合,完整性規(guī)則是給定 的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約 和依存規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù) 據(jù)

13、庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的 正確、有效、相容。.試述概念模型的作用。概念模型實際上是現(xiàn)實世界到機器世 界的一個中間層次。概念模型用于信息世 界的建模,是現(xiàn)實世界到信息世界的第一 層抽象,是數(shù)據(jù)庫設(shè)計人員進行數(shù)據(jù)庫設(shè) 計的有力工具,也是數(shù)據(jù)庫設(shè)計人員和用 戶之間進行交流的語言。.定義并解釋概念模型中以下術(shù)語: 實體,實體型,實體集,屬性,碼,實體 聯(lián)系圖(E-R圖)實體:客觀存在并可以相互區(qū)分的事物 叫實體。實體型:具有相同屬性的實體具 有相同的特征和性質(zhì),用實體名及其屬性 名集合來抽象和刻畫同類實體稱為實體 型。實體集:同型實體的集合稱為實體集。 屬性:實體所具有的某一特性,一個實體

14、可由若干個屬性來刻畫。碼:唯一標識實 體的屬性集稱為碼。實體聯(lián)系圖:E-R圖 提供了表示實體型、屬性和聯(lián)系的方法: 實體型:用矩形表示,矩形框內(nèi)寫明實體 名。屬性:用橢圓形表示,并用無向邊 將其與相應(yīng)的實體連接起來。聯(lián)系:用菱 形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向 邊分別與有關(guān)實體連接起來,同時在無向 邊旁標上聯(lián)系的類型(1:1,1 : n或 m : n)。.試述網(wǎng)狀、層次數(shù)據(jù)庫的優(yōu)缺點。 層次模型的優(yōu)點主要有:1)模型簡單, 對具有一對多的層次關(guān)系的部門描述非常 自然、直觀,容易理解,2)用層次模 型的應(yīng)用系統(tǒng)性能好,特別是對于那些實 體間聯(lián)系是固定的預(yù)先定義好的應(yīng)用,采 用層次模型來實現(xiàn),

15、其性能優(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)狀模型:網(wǎng)狀數(shù)據(jù)模型的優(yōu)點主要有:1)能夠更為直接地描述現(xiàn)實世界,如一 個結(jié)點可以有多個雙親。2)具有良好的 性能,存取效率較高。網(wǎng)狀數(shù)據(jù)模型的缺 點主要有:1)結(jié)構(gòu)比較復雜,而且隨 著應(yīng)用環(huán)境的擴大,數(shù)據(jù)庫的結(jié)構(gòu)就變得 越來越復雜,不利于最終用戶掌握。2) 其DDL,DML語言復雜,

16、用戶不容易使 用。由于記錄之間聯(lián)系是通過存取路徑實 現(xiàn)的,應(yīng)用程序在訪問數(shù)據(jù)時必須選擇適 當?shù)拇嫒÷窂?。因此,用戶必須了解系統(tǒng) 結(jié)構(gòu)的細節(jié),加重了編寫應(yīng)用程序的負擔。.試述關(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)是一 張二維表,它由行和列組成。(1)關(guān)系: 一個關(guān)系對應(yīng)通常說的一張表。(2)屬 性:表中的一列即為一個屬性;(3)域: 屬性的取值范圍;(4)元組:表中的一 行即為一個元組;(5)碼:表中的某個 屬性組,

17、它可以唯一確定一個元組;(6) 分量:元組中的一個屬性值;(7)關(guān)系 模式:對關(guān)系的描述,一般表示為關(guān)系名 (屬性1,屬性2,、,屬性n九.試述關(guān)系數(shù)據(jù)庫的特點。 關(guān)系數(shù)據(jù)模型具有下列優(yōu)點: 1 關(guān)系模型 與非關(guān)系模型不同,它是建立在嚴格的數(shù) 學概念的基礎(chǔ)上的。2關(guān)系模型的概念單 一。無論實體還是實體之間的聯(lián)系都用關(guān) 系表示。操作的對象和操作的結(jié)果都是關(guān) 系。所以其數(shù)據(jù)結(jié)構(gòu)簡單、清晰,用戶易 懂易用。3關(guān)系模型的存取路徑對用戶透 明,從而具有更高的數(shù)據(jù)獨立性、更好的 安全保密性,也簡化了程序員的工作和數(shù) 據(jù)庫開發(fā)建立的工作。缺點:由于存取路 徑對用戶透明,查詢效率往往不如非關(guān)系 數(shù)據(jù)模型。因此

18、為了提高性能,必須對用 戶的查詢請求進行優(yōu)化,增加了開發(fā)數(shù)據(jù) 庫管理系統(tǒng)軟件的難度。.試述數(shù)據(jù)庫系統(tǒng)三級模式結(jié)構(gòu),這 種結(jié)構(gòu)的優(yōu)點是什么?數(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)模式,亦稱存儲模式,是數(shù)據(jù) 在數(shù)據(jù)庫

19、系統(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)模式映 象。正是這兩層映象保證了數(shù)據(jù)庫系統(tǒng)中 的數(shù)據(jù)能夠具有較高的邏輯獨立性和物理 獨立性。.定義并解釋以下術(shù)語:DDL、DMLDDL :數(shù)據(jù)定義語言。用來定義數(shù)據(jù) 庫模式、外模式、內(nèi)模式的語言。DML : 數(shù)據(jù)操縱語言。用來對數(shù)據(jù)庫中的數(shù)據(jù)進 行查詢、插入、刪除和修改的

20、語句。.什么叫數(shù)據(jù)與程序的物理獨立性?什 么叫數(shù)據(jù)與程序的邏輯獨立性? 為什么 數(shù)據(jù)庫系統(tǒng)具有數(shù)據(jù)與程序的獨立性?數(shù)據(jù)與程序的邏輯獨立性:當模式改 變時、由數(shù)據(jù)庫管理員對各個外模式/模 式的映象作相應(yīng)改變,可以使外模式保持 不變。應(yīng)用程序是依據(jù)數(shù)據(jù)的外模式編寫 的,從而應(yīng)用程序不必修改,保證了數(shù)據(jù) 與程序的邏輯獨立性,簡稱數(shù)據(jù)的邏輯獨 立性。數(shù)據(jù)與程序的物理獨立性:當數(shù)據(jù) 庫的存儲結(jié)構(gòu)改變了,由數(shù)據(jù)庫管理員對 模式/內(nèi)模式映象作相應(yīng)改變,可以使模 式保持不變,從而應(yīng)用程序也不必改變。 保證了數(shù)據(jù)與程序的物理獨立性,簡稱數(shù) 據(jù)的物理獨立性。數(shù)據(jù)庫管理系統(tǒng)在三級 模式之間提供的兩層映象保證了數(shù)據(jù)庫

21、系 統(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)成。.DBA的職責是什么?負責全面地管理和控制數(shù)據(jù)庫系統(tǒng)。 具體職責包括:決定數(shù)據(jù)庫的信息內(nèi) 容和結(jié)構(gòu); 決定數(shù)據(jù)庫的存儲結(jié)構(gòu)和 存取策略;定義數(shù)據(jù)的安全性要求和 完整性約束條件;監(jiān)督和控制數(shù)據(jù)庫 的試用和運行;數(shù)據(jù)庫系統(tǒng)的改進和 重組。.系統(tǒng)分析員、數(shù)據(jù)庫設(shè)計人員、應(yīng) 用程序員的職責是什么?系統(tǒng)分析員負責應(yīng)用系統(tǒng)的需求分 析和規(guī)范說明,系統(tǒng)分析員要和用戶及 DBA相結(jié)合,確定系統(tǒng)的硬件軟件配置, 并參與數(shù)據(jù)庫系統(tǒng)的概要設(shè)計。數(shù)

22、據(jù)庫設(shè) 計人員負責數(shù)據(jù)庫中數(shù)據(jù)的確定、數(shù)據(jù)庫 各級模式的設(shè)計。數(shù)據(jù)庫設(shè)計人員必須參 加用戶需求調(diào)查和系統(tǒng)分析,然后進行數(shù) 據(jù)庫設(shè)計。在很多情況下,數(shù)據(jù)庫設(shè)計人 員就由數(shù)據(jù)庫管理員擔任。應(yīng)用程序員負 責設(shè)計和編寫應(yīng)用系統(tǒng)的程序模塊,并進 行調(diào)試和安裝。.試述關(guān)系模型的三個組成部分。關(guān)系模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集 合和關(guān)系完整性約束三部分組成。.試述關(guān)系數(shù)據(jù)語言的特點和分類。關(guān)系數(shù)據(jù)語言可以分為三類:關(guān)系代 數(shù)語言,域關(guān)系演算語言包括:元組關(guān) 系演算語言,具有關(guān)系代數(shù)和關(guān)系演算雙 重特點的語言特點是,具有完備的表達 能力,是非過程化的集合操作語言,功能 強,能夠嵌入高級語言中使用.定義并理解下

23、列術(shù)語,說明它們之間 的聯(lián)系與區(qū)別:(1)域,笛卡爾積, 關(guān)系,元組,屬性(2)主碼,候選碼, 外部碼(3)關(guān)系模式,關(guān)系,關(guān)系數(shù)據(jù)庫域:域是一組具有相同數(shù)據(jù)類型的值的 集合。笛卡爾積:給定一組域D1, D2,Dn,這些域中可以有相同的。 這組域的笛卡爾積為:D1XD2XXDn = ( dl,d2,dn ) I di?Di, i = 1 , 2,n 其中每一個元素 (dl,d2,dn )叫作一個n元 組(n-tuple )或簡稱元組(Tuple )。 元素中的每一個值di叫作一個分量 (Component )。關(guān)系:在域 D1, D2,Dn上笛卡爾積D1 X D2 XX Dn的子集稱為關(guān)系,表

24、示為R ( D1, D2,Dn )元組:關(guān)系中的每個元素 是關(guān)系中的元組。屬性:關(guān)系也是一個二 維表,表的每行對應(yīng)一個元組,表的每列 對應(yīng)一個域。由于域可以相同,為了加以 區(qū)分,必須對每列起一個名字,稱為屬性。 候選碼:若關(guān)系中的某一屬性組的值能唯 一地標識一個元組,則稱該屬性組為候選 碼。主碼:若一個關(guān)系有多個候選碼,則 選定其中一個為主碼。外部碼:設(shè)F是基 本關(guān)系R的一個或一組屬性,但不是關(guān)系 R的碼,如果F與基本關(guān)系S的主碼Ks 相對應(yīng),則稱F是基本關(guān)系R的外部碼, 簡稱外碼?;娟P(guān)系R稱為參照關(guān)系,基 本關(guān)系S稱為被參照關(guān)系或目標關(guān)系。關(guān) 系R和S可以是相同的關(guān)系。關(guān)系模式: 關(guān)系的描

25、述稱為關(guān)系模式。它可以形式化 地表示為:R ( U,D,dom,F(xiàn) ) 其中R為關(guān)系名,U為組成該關(guān)系的屬 性名集合,D為屬性組U中屬性所來自 的域,dom為屬性向域的映象集合,F(xiàn)為 屬性間數(shù)據(jù)的依賴關(guān)系集合。關(guān)系:在域 D1,D2,Dn上笛卡爾積D1 X D2 XX Dn的子集稱為關(guān)系,表示為R(D1 , D2,Dn )關(guān)系是關(guān)系模 式在某一時刻的狀態(tài)或內(nèi)容。關(guān)系模式是 靜態(tài)的、穩(wěn)定的,而關(guān)系是動態(tài)的、隨時 間不斷變化的,因為關(guān)系操作在不斷地更 新著數(shù)據(jù)庫中的數(shù)據(jù)。關(guān)系數(shù)據(jù)庫:關(guān)系 數(shù)據(jù)庫也有型和值之分。關(guān)系數(shù)據(jù)庫的型 也稱為關(guān)系數(shù)據(jù)庫模式,是對關(guān)系數(shù)據(jù)庫 的描述,它包括若干域的定義以及在這

26、些 域上定義的若干關(guān)系模式。關(guān)系數(shù)據(jù)庫的 值是這些關(guān)系模式在某一時刻對應(yīng)的關(guān)系 的集合,通常就稱為關(guān)系數(shù)據(jù)庫。.試述關(guān)系模型的完整性規(guī)則。在參 照完整性中,為什么外部碼屬性的值也可 以為空?什么情況下才可以為空?關(guān)系模型的完整性規(guī)則是對關(guān)系的某種 約束條件。關(guān)系模型中可以有三類完整性 約束:實體完整性、參照完整性和用戶定 義的完整性。其中實體完整性和參照完整 性是關(guān)系模型必須滿足的完整性約束條 件,被稱作是關(guān)系的兩個不變性,應(yīng)該由 關(guān)系系統(tǒng)自動支持。1)實體完整性規(guī)則:2)參照完整性規(guī)則:3)用戶定義的完整 性是針對某一具體關(guān)系數(shù)據(jù)庫的約束條 件。它反映某一具體應(yīng)用所涉及的數(shù)據(jù)必 須滿足的語義

27、要求。在參照完整性中,外部碼屬性的值可以為空,它表示該屬性 的值尚未確定。但前提條件是該外部碼屬 性不是其所在關(guān)系的主屬性。.等值連接與自然連接的區(qū)別是什 么?連接運算中有兩種最為重要也最為常 用的連接,一種是等值連接,另一種是自 然連接。0為“=”的連接運算稱為等值 連接。它是從關(guān)系R與S的笛卡爾積中 選取A、B屬性值相等的那些元組。即 等值連接為:R A=B S = t r t s | t rE R A t sG S A t r A = t s :B 自然連接是一種特殊的等值連接,它要求兩個關(guān)系中進行比較的分量必 須是相同的屬性組,并且要在結(jié)果中把重 復的屬性去掉。即若R和S具有相同的 屬

28、性組B,則自然連接可記作:RS=t r t s | t rE R A t sG S A t r B = t s B .代數(shù)的基本運算有哪些?如何用這 些基本運算來表示其他的關(guān)系基本運算?在八種關(guān)系代數(shù)運算中,并、差、笛 卡爾積、投影和選擇五種運算為基本的運 算。其他三種運算,即交、連接和除,均 可以用五種基本運算來表達。交運算:R? S = R-(R-S)連接運算 R S = ?A?B(R?S) A?B 除運算:R ( X,Y ) ?S ( Y, Z ) = ?X? - ?X ( ?X? ? ?Y(S) ?R ) X、 Y、Z為屬性組,R中的Y和S中的Y 可以有不同的屬性名,但必須出自相同的

29、域集。1 .試述SQL語言的特點。(1 )綜合統(tǒng)一。SQL語言集數(shù)據(jù)定義 語言DDL、數(shù)據(jù)操縱語言DML、數(shù)據(jù)控 制語言DCL的功能于一體。(2 )高度非 過程化。用SQL語言進行數(shù)據(jù)操作,只要 提出“做什么”,而無須指明“怎么做”, 因此無需了解存取路徑,存取路徑的選擇 以及SQL語句的操作過程由系統(tǒng)自動完 成。(3 )面向集合的操作方式。(4 ) 以同一種語法結(jié)構(gòu)提供兩種使用方式。SQL語言既是自含式語言,又是嵌入式語 言。(5 )語言簡捷,易學易用。.試述SQL的定義功能。SQL 的數(shù)據(jù)定義功能包括定義表、定義 視圖和定義索引。SQL語言使用CREATE TABLE語句建立基本表,ALT

30、ER TABLE語 句修改基本表定義,DROP TABLE語句刪 除基本表;使用CREATE INDEX語句建立 索引,DROP INDEX語句刪除索引;使用 CREATE VIEW 命令建立視圖, DROP VIEW 語句刪除視圖。.什么是基本表?什么是視圖?兩者 的區(qū)別和聯(lián)系是什么?.試述視圖的優(yōu)點。.所有的視圖是否都可以更新?為什 么?. 哪類視圖是可以更新的,哪類視圖 是不可更新的?各舉一例說明。.在嵌入式SQL中是如何區(qū)分SQL 語句和主語言語句的?在SQL語句前加上前綴 EXEC SQL。 SQL語句的結(jié)束標志則隨主語言的不同而 不同。.在嵌入式SQL中是如何解決數(shù)據(jù) 庫工作單元與

31、源程序工作單元之間通信 的?數(shù)據(jù)庫工作單元與源程序工作單元 之間的通信主要包括:(1 ) SQL通信 區(qū)SQLCA,用來向主語言傳遞SQL語句 的執(zhí)行狀態(tài)信息,使主語言能夠根據(jù)此信 息控制程序流程。(2 )主變量,1 )用 來實現(xiàn)主語言向SQL語句提供參數(shù)。2 ) 將SQL語句查詢數(shù)據(jù)庫的結(jié)果交主語言 進一步處理(3 )游標,解決集合性操作 語言與過程性操作語言的不匹配通過游標 逐一獲取記錄,并賦給主變量,交由主語 言進一步處理。.在嵌入式SQL中是如何協(xié)調(diào)SQL 語言的集合處理方式和主語言的單記錄處 理方式的?用游標來協(xié)調(diào)這兩種不同的處理方 式。游標區(qū)是系統(tǒng)為用戶開設(shè)的一個數(shù)據(jù) 緩沖區(qū),存放

32、SQL語句的執(zhí)行結(jié)果,每個 游標區(qū)都有一個名字。用戶可以通過游標 逐一獲取記錄,并賦給主變量,交由主語 言進一步處理。.試給出各類關(guān)系系統(tǒng)的定義:最小 關(guān)系系統(tǒng);關(guān)系上完備的系統(tǒng);全關(guān)系型 的關(guān)系系統(tǒng)。最小關(guān)系系統(tǒng):一個系統(tǒng)可定義為最 小關(guān)系系統(tǒng),當且僅當它:(1 )支持關(guān) 系數(shù)據(jù)庫。從用戶觀點看,關(guān)系數(shù)據(jù)庫由 表構(gòu)成,并且只有表這一種結(jié)構(gòu)。(2) 支持選擇、投影和(自然)連接運算,對 這些運算不必要求定義任何物理存取路 徑。關(guān)系上完備的系統(tǒng):這類系統(tǒng)支持關(guān) 系數(shù)據(jù)結(jié)構(gòu)和所有的關(guān)系代數(shù)操作。全關(guān) 系型的關(guān)系系統(tǒng):這類系統(tǒng)支持關(guān)系模型 的所有特征。即不僅是關(guān)系上完備的而且 支持數(shù)據(jù)結(jié)構(gòu)中域的概念

33、,支持實體完整 性和參照完整性。.試述全關(guān)系型系統(tǒng)應(yīng)滿足的十二條 準則,以及十二條基本準則的實際意義和 理論意義。關(guān)系模型的奠基人E.F.Codd具體地 給出了全關(guān)系型的關(guān)系系統(tǒng)應(yīng)遵循的十二 條基本準則。從實際意義上看,這十二條 準則可以作為評價或購買關(guān)系型產(chǎn)品的標 準。從理論意義上看,它是對關(guān)系數(shù)據(jù)模 型的具體而又深入的論述,是從理論和實 際緊密結(jié)合的高度對關(guān)系型 DBMS的評 述。準則0 一個關(guān)系型的DBMS必須能 完全通過它的關(guān)系能力來管理數(shù)據(jù)庫。準 則1信息準則。關(guān)系型DBMS的所有信息 都應(yīng)在邏輯一級上用一種方法即表中的值 顯式地表示。準則2保證訪問準則。依 靠表名、主碼和列名的組合

34、,保證能以邏 輯方式訪問關(guān)系數(shù)據(jù)庫中的每個數(shù)據(jù)項 (分量值)。準則3空值的系統(tǒng)化處 理。全關(guān)系型的DBMS應(yīng)支持空值的概念, 并用系統(tǒng)化的方式處理空值。準則4基 于關(guān)系模型的動態(tài)的聯(lián)機數(shù)據(jù)字典。數(shù)據(jù) 庫的描述在邏輯級上應(yīng)該和普通數(shù)據(jù)采用 同樣的表示方式,使得授權(quán)用戶可以使用 查詢一般數(shù)據(jù)所用的關(guān)系語言來查詢數(shù)據(jù) 庫的描述信息。準則5統(tǒng)一的數(shù)據(jù)子語 言準則。準則6視圖更新準則。所有理 論上可更新的視圖也應(yīng)該允許由系統(tǒng)更 新。準則7高級的插入、修改和刪除操 作。準則8數(shù)據(jù)物理獨立性。無論數(shù)據(jù) 庫的數(shù)據(jù)在存儲表示或存取方法上作任何 變化,應(yīng)用程序和終端活動都保持邏輯上 的不變性。準則9數(shù)據(jù)邏輯獨立性

35、。當 對基本關(guān)系進行理論上信息不受損害的任 何改變時,應(yīng)用程序和終端活動都保持邏 輯上的不變性。準則10數(shù)據(jù)完整性的獨 立性。關(guān)系數(shù)據(jù)庫的完整性約束條件必須 是用數(shù)據(jù)庫語言定義并存儲在數(shù)據(jù)字典中 的,而不是在應(yīng)用程序中加以定義的。準 則11分布獨立性。關(guān)系型DBMS具有分 布獨立性。準則12無破壞準則。如果一 個關(guān)系系統(tǒng)具有一個低級(指一次一個 記錄)語言,則這個低級語言不能違背或 繞過完整性準則。.試述查詢優(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) 點所在。它減輕了用戶選擇存取路徑的負 擔。用戶只要提出“干什么”,不必指

36、出 “怎么干”。查詢優(yōu)化的優(yōu)點不僅在于用 戶不必考慮如何最好地表達查詢以獲得較 好的效率,而且在于系統(tǒng)可以比用戶程序 的“優(yōu)化”做得更好??赡苄裕哼@是因 為:(1)優(yōu)化器可以從數(shù)據(jù)字典中獲 取許多統(tǒng)計信息,(2)如果數(shù)據(jù)庫的 物理統(tǒng)計信息改變了,系統(tǒng)可以自動對查 詢進行重新優(yōu)化以選擇相適應(yīng)的執(zhí)行計 劃。在非關(guān)系系統(tǒng)中必須重寫程序,而重 寫程序在實際應(yīng)用中往往是不太可能的。(3)優(yōu)化器可以考慮數(shù)十甚至數(shù)百種不 同的執(zhí)行計劃,從中選出較優(yōu)的一個,而 程序員一般只能考慮有限的幾種可能性。(4)優(yōu)化器中包括了很多復雜的優(yōu)化技 術(shù),這些優(yōu)化技術(shù)往往只有最好的程序員 才能掌握。系統(tǒng)的自動優(yōu)化相當于使得所

37、有人都擁有這些優(yōu)化技術(shù)。.試述查詢優(yōu)化的一般準則。下面的優(yōu)化策略一般能提高查詢效 率:(1)選擇運算應(yīng)盡可能先做。(2) 把投影運算和選擇運算同時進行。(3) 把投影同其前或其后的雙目運算結(jié)合起來 執(zhí)行。(4)把某些選擇同在它前面要 執(zhí)行的笛卡爾積結(jié)合起來成為一個連接運 算。(5)找出公共子表達式。(6 ) 選取合適的連接算法.試述查詢優(yōu)化的一般步驟。各個關(guān)系系統(tǒng)的優(yōu)化方法不盡相同, 大致的步驟可以歸納如下:(1)把查 詢轉(zhuǎn)換成某種內(nèi)部表示,通常用的內(nèi)部表 示是語法樹。(2)把語法樹轉(zhuǎn)換成標 準(優(yōu)化)形式。即利用優(yōu)化算法,把 原始的語法樹轉(zhuǎn)換成優(yōu)化的形式。(3) 選擇低層的存取路徑。(4)生

38、成查詢 計劃,選擇代價最小的。.理解并給出下列術(shù)語的定義:函數(shù)依 賴、部分函數(shù)依賴、完全函數(shù)依賴、傳遞 依賴、候選碼、主碼、外碼、全碼 (All-key) 、 1NF 、 2NF 、 3NF 、 BCNF 、 多值依賴、4NF。.試述數(shù)據(jù)庫設(shè)計過程。這里只概要列出數(shù)據(jù)庫設(shè)計過程的六 個階段:1)需求分析2)概念結(jié)構(gòu)設(shè)計3)邏輯結(jié)構(gòu)設(shè)計4)數(shù)據(jù)庫物理設(shè)計5) 數(shù)據(jù)庫實施6)數(shù)據(jù)庫運行和維護這是一 個完整的實際數(shù)據(jù)庫及其應(yīng)用系統(tǒng)的設(shè)計 過程。不僅包括設(shè)計數(shù)據(jù)庫本身,還包括 數(shù)據(jù)庫的實施、數(shù)據(jù)庫運行和維護。設(shè)計 一個完善的數(shù)據(jù)庫應(yīng)用系統(tǒng)往往是上述六 個階段的不斷反復。54.試述數(shù)據(jù)庫設(shè)計過程的各個階

39、段上的 設(shè)計描述。各階段的設(shè)計要點如下: 1) 需求分 析:準確了解與分析用戶需求。2)概念 結(jié)構(gòu)設(shè)計:通過對用戶需求進行綜合、歸 納與抽象,形成一個獨立于具體DBMS的 概念模型。3)邏輯結(jié)構(gòu)設(shè)計:將概念結(jié) 構(gòu)轉(zhuǎn)換為某個 DBMS 所支持的數(shù)據(jù)模型, 并對其進行優(yōu)化。4)數(shù)據(jù)庫物理設(shè)計: 為邏輯數(shù)據(jù)模型選取一個最適合應(yīng)用環(huán)境 的物理結(jié)構(gòu)。5)數(shù)據(jù)庫實施:設(shè)計人員 運用DBMS提供的數(shù)據(jù)語言、工具及宿主 語言,根據(jù)邏輯設(shè)計和物理設(shè)計的結(jié)果建 立數(shù)據(jù)庫,編制與調(diào)試應(yīng)用程序,組織數(shù) 據(jù)入庫,并進行試運行。6)數(shù)據(jù)庫運行 和維護:在數(shù)據(jù)庫系統(tǒng)運行過程中對其進 行評價、調(diào)整與修改。.試述數(shù)據(jù)庫設(shè)計過程

40、中結(jié)構(gòu)設(shè)計部分 形成的數(shù)據(jù)庫模式。數(shù)據(jù)庫結(jié)構(gòu)設(shè)計的不同階段形成數(shù)據(jù) 庫的各級模式,即:在概念設(shè)計階段形成 獨立于機器特點,獨立于各個DBMS產(chǎn)品 的概念模式,在本篇中就是E-R圖;?在 邏輯設(shè)計階段將 E-R 圖轉(zhuǎn)換成具體的數(shù) 據(jù)庫產(chǎn)品支持的數(shù)據(jù)模型,如關(guān)系模型, 形成數(shù)據(jù)庫邏輯模式;然后在基本表的基 礎(chǔ)上再建立必要的視圖(View),形成數(shù) 據(jù)的外模式; ? 在物理設(shè)計階段,根據(jù) DBMS特點和處理的需要,進行物理存儲安 排,建立索引,形成數(shù)據(jù)庫內(nèi)模式。.試述數(shù)據(jù)庫設(shè)計的特點。特點有:1)數(shù)據(jù)庫建設(shè)是硬件、軟件 和干件(技術(shù)與管理的界面)的結(jié)合。2) 從軟件設(shè)計的技術(shù)角度看,數(shù)據(jù)庫設(shè)計應(yīng) 該

41、和應(yīng)用系統(tǒng)設(shè)計相結(jié)合,也就是說,整 個設(shè)計過程中要把結(jié)構(gòu)(數(shù)據(jù))設(shè)計和行 為(處理)設(shè)計密切結(jié)合起來。57.需求分析階段的設(shè)計目標是什么?調(diào) 查的內(nèi)容是什么?需求分析階段的設(shè)計目標是通過詳細 調(diào)查現(xiàn)實世界要處理的對象,充分了解原 系統(tǒng)工作概況,明確用戶的各種需求,然 后在此基礎(chǔ)上確定新系統(tǒng)的功能。調(diào)查的 內(nèi)容是“數(shù)據(jù)”和“處理”,即獲得用戶 對數(shù)據(jù)庫的如下要求:(1)信息要求。 指用戶需要從數(shù)據(jù)庫中獲得信息的內(nèi)容與 性質(zhì)。由信息要求可以導出數(shù)據(jù)要求,即 在數(shù)據(jù)庫中需要存儲哪些數(shù)據(jù)。(2)處 理要求。指用戶要完成什么處理功能,對 處理的響應(yīng)時間有什么要求,處理方式是 批處理還是聯(lián)機處理。(3)安

42、全性與完 整性要求。. 數(shù)據(jù)字典的內(nèi)容和作用是什么?數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的集 合。數(shù)據(jù)字典的內(nèi)容通常包括:數(shù)據(jù)項、 數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲、處理過程 五個部分其中數(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ù)的描述,在需求分析階段建立,是下 一步進行概念設(shè)計的基礎(chǔ),并在數(shù)據(jù)庫設(shè) 計過程中不斷修改、充實、完善。.什么是數(shù)據(jù)庫的概念結(jié)構(gòu)?試述其特 點和設(shè)計策略。概念結(jié)構(gòu)是信息世界的結(jié)構(gòu),即概念 模型,其主要特點是:(1)能真實、充 分地反映現(xiàn)實世界,

43、包括事物和事物之間 的聯(lián)系,能滿足用戶對數(shù)據(jù)的處理要求。 是對現(xiàn)實世界的一個真實模型。(2)易 于理解,從而可以用它和不熟悉計算機的 用戶交換意見,用戶的積極參與是數(shù)據(jù)庫 的設(shè)計成功的關(guān)鍵。(3)易于更改,當 應(yīng)用環(huán)境和應(yīng)用要求改變時,容易對概念 模型修改和擴充。(4)易于向關(guān)系、網(wǎng) 狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換。概念結(jié)構(gòu) 的設(shè)計策略通常有四種:1自頂向下。即 首先定義全局概念結(jié)構(gòu)的框架,然后逐步 細化;2自底向上。即首先定義各局部應(yīng) 用的概念結(jié)構(gòu),然后將它們集成起來,得 到全局概念結(jié)構(gòu);3逐步擴張。首先定義 最重要的核心概念結(jié)構(gòu),然后向外擴充, 以滾雪球的方式逐步生成其他概念結(jié)構(gòu), 直至總體概

44、念結(jié)構(gòu);4混合策略。即將自 頂向下和自底向上相結(jié)合,用自頂向下策 略設(shè)計一個全局概念結(jié)構(gòu)的框架,以它為 骨架集成由自底向上策略中設(shè)計的各局部 概念結(jié)構(gòu)。.什么叫數(shù)據(jù)抽象?試舉例說明。數(shù)據(jù)抽象是對實際的人、物、事和概 念進行人為處理,抽取所關(guān)心的共同特性, 忽略非本質(zhì)的細節(jié),并把這些特性用各種 概念精確地加以描述,這些概念組成了某 種模型。如分類這種抽象是:定義某一類 概念作為現(xiàn)實世界中一組對象的類型。這 些對象具有某些共同的特性和行為。它抽 象了對象值和型之間的“ is member of ” 的語義。在E-R模型中,實體型就是這種 抽象。例如在學校環(huán)境中,李英是老師, 表示李英是教師類型中的

45、一員,則教師是 實體型,李英是教師實體型中的一個實體 值,具有教師共同的特性和行為:在某個 系某個專業(yè)教學,講授某些課程,從事某 個方向的科研。.試述數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計的重要性和 設(shè)計步驟。重要性:數(shù)據(jù)庫概念設(shè)計是整個數(shù)據(jù) 庫設(shè)計的關(guān)鍵,將在需求分析階段所得到 的應(yīng)用需求首先抽象為概念結(jié)構(gòu),以此作 為各種數(shù)據(jù)模型的共同基礎(chǔ),從而能更好 地、更準確地用某一 DBMS實現(xiàn)這些需求。設(shè)計步驟:概念結(jié)構(gòu)的設(shè)計方法有多 種,其中最經(jīng)常采用的策略是自底向上方 法,該方法的設(shè)計步驟通常分為兩步:第1 步是抽象數(shù)據(jù)并設(shè)計局部視圖,第2步是 集成局部視圖,得到全局的概念結(jié)構(gòu).什么是E-R圖?構(gòu)成E-R圖的基本

46、要素是什么?E-R圖為實體-聯(lián)系圖,提供了表示 實體型、屬性和聯(lián)系的方法,用來描述現(xiàn) 實世界的概念模型。構(gòu)成E-R圖的基本要 素是實體型、屬性和聯(lián)系,其表示方法為: 實體型:用矩形表示,矩形框內(nèi)寫明實體 名;屬性:用橢圓形表示,并用無向邊 將其與相應(yīng)的實體連接起來;聯(lián)系:用 菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無 向邊分別與有關(guān)實體連接起來,同時在無 向邊旁標上聯(lián)系的類型(1 :1, 1 : n 或 m : n)。.為什么要視圖集成?視圖集成的方法 是什么?在對數(shù)據(jù)庫系統(tǒng)進行概念結(jié)構(gòu)設(shè)計時 一般采用自底向上的設(shè)計方法,把繁雜的 大系統(tǒng)分解子系統(tǒng)。首先設(shè)計各個子系統(tǒng) 的局部視圖,然后通過視圖集成的

47、方式將 各子系統(tǒng)有機的融合起來,綜合成一個系 統(tǒng)的總視圖。這樣設(shè)計清晰,由簡到繁。 由于數(shù)據(jù)庫系統(tǒng)是從整體角度看待和描述 數(shù)據(jù)的,因此數(shù)據(jù)不再面向某個應(yīng)用而是 整個系統(tǒng)。因此必須進行視圖集成,使得 數(shù)據(jù)庫能被全系統(tǒng)的多個用戶、多個應(yīng)用 共享使用。一般說來,視圖集成可以有兩 種方式:多個分E-R圖一次集成;逐 步集成,用累加的方式一次集成兩個分 E-R圖。無論采用哪種方式,每次集成局 部E-R圖時都需要分兩步走:(1)合并。 解決各分E-R圖之間的沖突,將各分E-R 圖合并起來生成初步E-R圖。(2)修改 和重構(gòu)。消除不必要的冗余,生成基本E-R 圖。.什么是數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計?試述 其設(shè)計步

48、驟。數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計就是把概念結(jié) 構(gòu)設(shè)計階段設(shè)計好的基本E-R圖轉(zhuǎn)換為 與選用的DBMS產(chǎn)品所支持的數(shù)據(jù)模型相 符合的邏輯結(jié)構(gòu)。:(1)將概念結(jié)構(gòu)轉(zhuǎn) 換為一般的關(guān)系、網(wǎng)狀、層次模型;(2) 將轉(zhuǎn)換來的關(guān)系、網(wǎng)狀、層次模型向特定 DBMS支持下的數(shù)據(jù)模型轉(zhuǎn)換;(3)對數(shù) 據(jù)模型進行優(yōu)化。.試述把E-R圖轉(zhuǎn)換為DBTG模型和 關(guān)系模型的轉(zhuǎn)換規(guī)則。E-R圖向DBTG模型的轉(zhuǎn)換規(guī)則:1) 每個實體型轉(zhuǎn)換為記錄型,實體的屬性轉(zhuǎn) 換為記錄的數(shù)據(jù)項;2)實體型之間1 : n ( n N 1 )的聯(lián)系轉(zhuǎn)換為一個系,沒 有任何聯(lián)系的實體型轉(zhuǎn)換為奇異系;3) K (K N 2)個實體型之間多對多的聯(lián)系, 引入

49、一個連結(jié)記錄,形成K個實體型和連 結(jié)記錄之間的K個系。連結(jié)記錄的屬性由 諸首記錄的碼及聯(lián)系屬性所組成;4)同 一實體型內(nèi)的 1 : n , n : m 聯(lián)系, 引入連結(jié)記錄,轉(zhuǎn)換為兩個系。66.你能給出由E-R圖轉(zhuǎn)換為IMS模型 的轉(zhuǎn)換規(guī)則嗎?E-R圖向IMS模型的轉(zhuǎn)換規(guī)則:1) 每個實體型轉(zhuǎn)換為記錄型,實體的屬性轉(zhuǎn) 換為記錄的數(shù)據(jù)項; 2) 實體型之間 1 : n ( n N 1 )的聯(lián)系轉(zhuǎn)換記錄型之間的 有向邊;3)實體型之間m : n ( m1, n1 )的聯(lián)系則分解成一對多聯(lián)系,再根 據(jù)2)轉(zhuǎn)換;4) K ( K N 2 )個實體 型之間多對多的聯(lián)系,可先轉(zhuǎn)換成多對兩 個實體型之間的聯(lián)

50、系,再根據(jù)3)轉(zhuǎn)換。.規(guī)范化理論對數(shù)據(jù)庫設(shè)計有什么指導 意義?規(guī)范化理論為數(shù)據(jù)庫設(shè)計人員判斷關(guān) 系模式優(yōu)劣提供了理論標準,可用以指導 關(guān)系數(shù)據(jù)模型的優(yōu)化,用來預(yù)測模式可能 出現(xiàn)的問題,為設(shè)計人員提供了自動產(chǎn)生 各種模式的算法工具,使數(shù)據(jù)庫設(shè)計工作 有了嚴格的理論基礎(chǔ)。.試述數(shù)據(jù)庫物理設(shè)計的內(nèi)容和步驟。數(shù)據(jù)庫在物理設(shè)備上的存儲結(jié)構(gòu)與存 取方法稱為數(shù)據(jù)庫的物理結(jié)構(gòu),它依賴于 給定的DBMS。為一個給定的邏輯數(shù)據(jù)模 型選取一個最適合應(yīng)用要求的物理結(jié)構(gòu), 就是數(shù)據(jù)庫的物理設(shè)計的主要內(nèi)容。數(shù)據(jù) 庫的物理設(shè)計步驟通常分為兩步:( 1 ) 確定數(shù)據(jù)庫的物理結(jié)構(gòu),在關(guān)系數(shù)據(jù)庫中 主要指存取方法和存儲結(jié)構(gòu);(

51、2 )對物 理結(jié)構(gòu)進行評價,評價的重點是時間和空 間效率。69.你能給出關(guān)系數(shù)據(jù)庫物理設(shè)計的主要 內(nèi)容嗎?例如ORACLE數(shù)據(jù)庫物理設(shè)計的 內(nèi)容。對于關(guān)系數(shù)據(jù)庫物理設(shè)計的內(nèi)容主要 包括:?為關(guān)系模式選擇存取方法;? 設(shè)計關(guān)系、索引等數(shù)據(jù)庫文件的物理存儲 結(jié)構(gòu)。有關(guān)ORACLE數(shù)據(jù)庫物理設(shè)計的內(nèi) 容請參考其技術(shù)資料,根據(jù)上述內(nèi)容進行 總結(jié)。.數(shù)據(jù)輸入在實施階段的重要性是什 么?如何保證輸入數(shù)據(jù)的正確性?數(shù)據(jù)庫是用來對數(shù)據(jù)進行存儲、管理 與應(yīng)用的,因此在實施階段必須將原有系 統(tǒng)中的歷史數(shù)據(jù)輸入到數(shù)據(jù)庫。數(shù)據(jù)量一 般都很大,而且數(shù)據(jù)來源于部門中的各個 不同的單位。數(shù)據(jù)的組織方式、結(jié)構(gòu)和格 式都與新設(shè)

52、計的數(shù)據(jù)庫系統(tǒng)有相當?shù)牟?距,組織數(shù)據(jù)錄入就要將各類源數(shù)據(jù)從各 個局部應(yīng)用中抽取出來,分類轉(zhuǎn)換,最后 綜合成符合新設(shè)計的數(shù)據(jù)庫結(jié)構(gòu)的形式, 輸入數(shù)據(jù)庫。因此這樣的數(shù)據(jù)轉(zhuǎn)換、組織 入庫的工作是相當費力費時的工作。特別 是原系統(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),由計算機來完 成數(shù)據(jù)入庫的任務(wù)。在源數(shù)據(jù)入庫之前要 采用多種方法對它們進行檢驗,以防止不 正確的數(shù)據(jù)入庫。.什么是數(shù)據(jù)庫的再組織和重構(gòu)造?為 什么要進行數(shù)據(jù)庫的再組織和重

53、構(gòu)造?數(shù)據(jù)庫的再組織是指:按原設(shè)計要求 重新安排存儲位置、回收垃圾、減少指針 鏈等,以提高系統(tǒng)性能。數(shù)據(jù)庫的重構(gòu)造 則是指部分修改數(shù)據(jù)庫的模式和內(nèi)模式, 即修改原設(shè)計的邏輯和物理結(jié)構(gòu)。數(shù)據(jù)庫 的再組織是不修改數(shù)據(jù)庫的模式和內(nèi)模式 的。進行數(shù)據(jù)庫的再組織和重構(gòu)造的原因: 數(shù)據(jù)庫運行一段時間后,由于記錄不斷增、 刪、改,會使數(shù)據(jù)庫的物理存儲情況變壞, 降低了數(shù)據(jù)的存取效率,數(shù)據(jù)庫性能下降, 這時DBA就要對數(shù)據(jù)庫進行重組織。 DBMS 一般都提供數(shù)據(jù)重組織用的實用程 序。數(shù)據(jù)庫應(yīng)用環(huán)境常常發(fā)生變化,如增 加新的應(yīng)用或新的實體,取消了某些應(yīng)用, 有的實體與實體間的聯(lián)系也發(fā)生了變化 等,使原有的數(shù)據(jù)庫

54、設(shè)計不能滿足新的需 求,需要調(diào)整數(shù)據(jù)庫的模式和內(nèi)模式。這 就要進行數(shù)據(jù)庫重構(gòu)造。.試述事務(wù)的概念及事務(wù)的四個特性。事務(wù)是用戶定義的一個數(shù)據(jù)庫操作 序列,這些操作要么全做要么全不做,是 一個不可分割的工作單位。事務(wù)具有四個 特性:原子性、一致性、隔離性和持續(xù)性)。 這個四個特性也簡稱為ACID特性。原子 性:事務(wù)是數(shù)據(jù)庫的邏輯工作單位,事務(wù) 中包括的諸操作要么都做,要么都不做。 一致性:事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫 從一個一致性狀態(tài)變到另一個一致性狀 態(tài)。隔離性:一個事務(wù)的執(zhí)行不能被其他 事務(wù)干擾。即一個事務(wù)內(nèi)部的操作及使用 的數(shù)據(jù)對其他并發(fā)事務(wù)是隔離的,并發(fā)執(zhí) 行的各個事務(wù)之間不能互相干擾。持

55、續(xù)性: 持續(xù)性也稱永久性,指一個事務(wù)一旦提交, 它對數(shù)據(jù)庫中數(shù)據(jù)的改變就應(yīng)該是永久性 的。接下來的其他操作或故障不應(yīng)該對其 執(zhí)行結(jié)果有任何影響。.為什么事務(wù)非正常結(jié)束時會影響數(shù)據(jù) 庫數(shù)據(jù)的正確性,請列舉一例說明之。事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫從 一個一致性狀態(tài)變到另一個一致性狀態(tài)。 如果數(shù)據(jù)庫系統(tǒng)運行中發(fā)生故障,有些事 務(wù)尚未完成就被迫中斷,這些未完成事務(wù) 對數(shù)據(jù)庫所做的修改有一部分已寫入物理 數(shù)據(jù)庫,這時數(shù)據(jù)庫就處于一種不正確的 狀態(tài),或者說是不一致的狀態(tài)。例如某工 廠的庫存管理系統(tǒng)中,要把數(shù)量為Q的某 種零件從倉庫1移到倉庫2存放。則可 以定義一個事務(wù) T , T 包括兩個操作; Q1=Q

56、1-Q,Q2=Q2+Q。如果T非正常終 止時只做了第一個操作,則數(shù)據(jù)庫就處于 不一致性狀態(tài),庫存量無緣無故少了 Q。.數(shù)據(jù)庫中為什么要有恢復子系統(tǒng)?它 的功能是什么?因為計算機系統(tǒng)中硬件的故障、軟件 的錯誤、操作員的失誤以及惡意的破壞是 不可避免的,這些故障輕則造成運行事務(wù) 非正常中斷,影響數(shù)據(jù)庫中數(shù)據(jù)的正確性, 重則破壞數(shù)據(jù)庫,使數(shù)據(jù)庫中全部或部分 數(shù)據(jù)丟失,因此必須要有恢復子系統(tǒng)。恢 復子系統(tǒng)的功能是:把數(shù)據(jù)庫從錯誤狀態(tài) 恢復到某一已知的正確狀態(tài)(亦稱為一致 狀態(tài)或完整狀態(tài))。.數(shù)據(jù)庫運行中可能產(chǎn)生的故障有哪幾 類?哪些故障影響事務(wù)的正常執(zhí)行?哪些 故障破壞數(shù)據(jù)庫數(shù)據(jù)?數(shù)據(jù)庫系統(tǒng)中可能發(fā)生

57、各種各樣的 故障,大致可以分以下幾類:(1)事務(wù) 內(nèi)部的故障;(2)系統(tǒng)故障;(3)介 質(zhì)故障;(4)計算機病毒。事務(wù)故障、 系統(tǒng)故障和介質(zhì)故障影響事務(wù)的正常執(zhí) 行;介質(zhì)故障和計算機病毒破壞數(shù)據(jù)庫數(shù) 據(jù)。.數(shù)據(jù)庫恢復的基本技術(shù)有哪些?數(shù)據(jù)轉(zhuǎn)儲和登錄日志文件是數(shù)據(jù)庫 恢復的基本技術(shù)。當系統(tǒng)運行過程中發(fā)生 故障,利用轉(zhuǎn)儲的數(shù)據(jù)庫后備副本和日志 文件就可以將數(shù)據(jù)庫恢復到故障前的某個 一致性狀態(tài)。.數(shù)據(jù)庫轉(zhuǎn)儲的意義是什么?試比較 各種數(shù)據(jù)轉(zhuǎn)儲方法。數(shù)據(jù)轉(zhuǎn)儲是數(shù)據(jù)庫恢復中采用的基 本技術(shù)。所謂轉(zhuǎn)儲即DBA定期地將數(shù)據(jù)庫 復制到磁帶或另一個磁盤上保存起來的過 程。當數(shù)據(jù)庫遭到破壞后可以將后備副本 重新裝入

58、,將數(shù)據(jù)庫恢復到轉(zhuǎn)儲時的狀態(tài)。 靜態(tài)轉(zhuǎn)儲:在系統(tǒng)中無運行事務(wù)時進行的 轉(zhuǎn)儲操作。如上圖所示。靜態(tài)轉(zhuǎn)儲簡單, 但必須等待正運行的用戶事務(wù)結(jié)束才能進 行。同樣,新的事務(wù)必須等待轉(zhuǎn)儲結(jié)束才 能執(zhí)行。顯然,這會降低數(shù)據(jù)庫的可用性。 動態(tài)轉(zhuǎn)儲:指轉(zhuǎn)儲期間允許對數(shù)據(jù)庫進行 存取或修改。動態(tài)轉(zhuǎn)儲可克服靜態(tài)轉(zhuǎn)儲的 缺點,它不用等待正在運行的用戶事務(wù)結(jié) 束,也不會影響新事務(wù)的運行。但是,轉(zhuǎn) 儲結(jié)束時后援副本上的數(shù)據(jù)并不能保證正 確有效。因為轉(zhuǎn)儲期間運行的事務(wù)可能修 改了某些數(shù)據(jù),使得后援副本上的數(shù)據(jù)不 是數(shù)據(jù)庫的一致版本。為此,必須把轉(zhuǎn)儲 期間各事務(wù)對數(shù)據(jù)庫的修改活動登記下 來,建立日志文件。這樣,后援副本加上

59、 日志文件就能得到數(shù)據(jù)庫某一時刻的正確 狀態(tài)。轉(zhuǎn)儲還可以分為海量轉(zhuǎn)儲和增量轉(zhuǎn) 儲兩種方式。海量轉(zhuǎn)儲是指每次轉(zhuǎn)儲全部 數(shù)據(jù)庫。增量轉(zhuǎn)儲則指每次只轉(zhuǎn)儲上一次 轉(zhuǎn)儲后更新過的數(shù)據(jù)。從恢復角度看,使 用海量轉(zhuǎn)儲得到的后備副本進行恢復一般 說來更簡單些。但如果數(shù)據(jù)庫很大,事務(wù) 處理又十分頻繁,則增量轉(zhuǎn)儲方式更實用 更有效。.什么是日志文件?為什么要設(shè)立日志 文件?(1)日志文件是用來記錄事務(wù)對 數(shù)據(jù)庫的更新操作的文件。(2)設(shè)立日 志文件的目的是:進行事務(wù)故障恢復;進 行系統(tǒng)故障恢復;協(xié)助后備副本進行介質(zhì) 故障恢復。79.登記日志文件時為什么必須先寫日志 文件,后寫數(shù)據(jù)庫?把對數(shù)據(jù)的修改寫到數(shù)據(jù)庫中和把

60、 表示這個修改的日志記錄寫到日志文件中 是兩個不同的操作。有可能在這兩個操作 之間發(fā)生故障,即這兩個寫操作只完成了 一個。如果先寫了數(shù)據(jù)庫修改,而在運行 記錄中沒有登記這個修改,則以后就無法 恢復這個修改了。如果先寫日志,但沒有 修改數(shù)據(jù)庫,在恢復時只不過是多執(zhí)行一 次UNDO操作,并不會影響數(shù)據(jù)庫的正確 性。所以一定要先寫日志文件,即首先把 日志記錄寫到日志文件中,然后寫數(shù)據(jù)庫 的修改。.針對不同的故障,試給出恢復的策略 和方法。(即如何進行事務(wù)故障的恢復?系 統(tǒng)故障的恢復?介質(zhì)故障恢復?)答:事務(wù)故障的恢復:事務(wù)故障的恢 復是由DBMS自動完成的,對用戶是透明 的。DBMS執(zhí)行恢復步驟是:

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論