SQL-Server數(shù)據(jù)庫及應(yīng)用課件匯總?cè)譸pt完整版課件最全教學(xué)教程整套課件全書電子教案_第1頁
SQL-Server數(shù)據(jù)庫及應(yīng)用課件匯總?cè)譸pt完整版課件最全教學(xué)教程整套課件全書電子教案_第2頁
SQL-Server數(shù)據(jù)庫及應(yīng)用課件匯總?cè)譸pt完整版課件最全教學(xué)教程整套課件全書電子教案_第3頁
SQL-Server數(shù)據(jù)庫及應(yīng)用課件匯總?cè)譸pt完整版課件最全教學(xué)教程整套課件全書電子教案_第4頁
SQL-Server數(shù)據(jù)庫及應(yīng)用課件匯總?cè)譸pt完整版課件最全教學(xué)教程整套課件全書電子教案_第5頁
已閱讀5頁,還剩820頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第1章 數(shù)據(jù)庫系統(tǒng)概論本章學(xué)習(xí)目標(biāo)理解數(shù)據(jù)庫的基本術(shù)語和概念了解數(shù)據(jù)管理技術(shù)的發(fā)展過程掌握數(shù)據(jù)庫系統(tǒng)的組成掌握關(guān)系數(shù)據(jù)庫掌握關(guān)系數(shù)據(jù)庫的規(guī)范化理論掌握數(shù)據(jù)庫設(shè)計(jì)過程1.1 數(shù)據(jù)庫基礎(chǔ)知識(shí)1.1.1 數(shù)據(jù)庫基本概念1. 數(shù)據(jù)數(shù)據(jù)(Data)是描述事物的符號(hào)記錄 。用數(shù)據(jù)描述現(xiàn)實(shí)世界中的對(duì)象可以是實(shí)在的事物 : (B1051211,丁小玲,女,20,計(jì)算機(jī)系)也可以是抽象的事物: (柳文艷,數(shù)據(jù)庫原理與應(yīng)用,95)1.1.1 數(shù)據(jù)庫基本概念1. 數(shù)據(jù)數(shù)據(jù)和關(guān)于數(shù)據(jù)的解釋是不可分的數(shù)據(jù)的解釋是對(duì)數(shù)據(jù)含義的說明,數(shù)據(jù)的含義稱為數(shù)據(jù)的語義。 1.1.1 數(shù)據(jù)庫基本概念2數(shù)據(jù)庫 通俗地講,數(shù)據(jù)庫(Data

2、Base)是存放數(shù)據(jù)的倉庫,只不過數(shù)據(jù)是按一定的存儲(chǔ)格式存放在計(jì)算機(jī)存儲(chǔ)設(shè)備上。嚴(yán)格地講,數(shù)據(jù)庫是長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi)的、有組織的、可共享的大量數(shù)據(jù)的集合。 1.1.1 數(shù)據(jù)庫基本概念3. 數(shù)據(jù)庫管理系統(tǒng)位于計(jì)算機(jī)系統(tǒng)中用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,它是數(shù)據(jù)庫系統(tǒng)的核心組成部分,用戶在數(shù)據(jù)庫系統(tǒng)中的一切操作,包括數(shù)據(jù)定義、查詢、更新及各種控制,都是通過DBMS進(jìn)行的。DBMS把用戶抽象的邏輯數(shù)據(jù)處理、轉(zhuǎn)換成計(jì)算機(jī)中的具體的物理數(shù)據(jù)。1.1.1 數(shù)據(jù)庫基本概念3. 數(shù)據(jù)庫管理系統(tǒng)DBMS的主要功能有以下幾個(gè)方面:(1)數(shù)據(jù)定義功能(2)數(shù)據(jù)操縱功能(3)數(shù)據(jù)庫的事務(wù)管理和運(yùn)行管理(4)數(shù)據(jù)

3、庫的建立和維護(hù)功能(5)數(shù)據(jù)通信1.1.1 數(shù)據(jù)庫基本概念4. 數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)(DataBase System,DBS)是指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng),一般由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員和用戶構(gòu)成, 1.1.1 數(shù)據(jù)庫基本概念4. 數(shù)據(jù)庫系統(tǒng)用戶用戶用戶應(yīng)用系統(tǒng)應(yīng)用開發(fā)工具數(shù)據(jù)庫管理操作系統(tǒng)數(shù)據(jù)庫數(shù)據(jù)庫管理員1.1.2 數(shù)據(jù)管理技術(shù)發(fā)展數(shù)據(jù)庫技術(shù)即數(shù)據(jù)管理技術(shù),是對(duì)數(shù)據(jù)的分類、組織、編碼、存儲(chǔ)、檢索和維護(hù)的技術(shù)。 數(shù)據(jù)管理技術(shù)大致經(jīng)歷了如下三個(gè)階段:人工管理階段文件系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)階段1.1.2 數(shù)據(jù)管理技術(shù)發(fā)展1人工管理階段20世紀(jì)50年代中期

4、以前 人工管理階段的特點(diǎn)是:數(shù)據(jù)不保存數(shù)據(jù)無專門軟件進(jìn)行管理數(shù)據(jù)不共享(冗余度大)數(shù)據(jù)不具有獨(dú)立性(完全依賴于程序)數(shù)據(jù)無結(jié)構(gòu)1.1.2 數(shù)據(jù)管理技術(shù)發(fā)展2文件系統(tǒng)階段20世紀(jì)50年代后期到60年代中期 文件系統(tǒng)管理數(shù)據(jù)的特點(diǎn):數(shù)據(jù)可以長(zhǎng)期保存由文件系統(tǒng)管理數(shù)據(jù)程序與數(shù)據(jù)有一定的獨(dú)立性數(shù)據(jù)共享性差(冗余度大)數(shù)據(jù)獨(dú)立性差記錄內(nèi)部有結(jié)構(gòu)(但整體無結(jié)構(gòu))1.1.2 數(shù)據(jù)管理技術(shù)發(fā)展3數(shù)據(jù)庫系統(tǒng)階段 20世紀(jì)60年代后期 數(shù)據(jù)庫系統(tǒng)管理數(shù)據(jù)的特點(diǎn)如下 :(1)數(shù)據(jù)結(jié)構(gòu)化(2)數(shù)據(jù)共享性高、冗余少,易擴(kuò)充(3)數(shù)據(jù)獨(dú)立性高(4)有統(tǒng)一的數(shù)據(jù)控制功能1.1.2 數(shù)據(jù)管理技術(shù)發(fā)展3數(shù)據(jù)庫系統(tǒng)階段 數(shù)據(jù)庫管

5、理系統(tǒng)提供下述四方面的數(shù)據(jù)控制功能。 數(shù)據(jù)的安全性(Security)控制 數(shù)據(jù)的完整性(Integrity)控制 并發(fā)(Concurrency)控制 數(shù)據(jù)恢復(fù)(Recovery)1.1.2 數(shù)據(jù)管理技術(shù)發(fā)展1.1.3 數(shù)據(jù)模型數(shù)據(jù)模型是對(duì)現(xiàn)實(shí)世界數(shù)據(jù)特征的抽象,是現(xiàn)實(shí)世界的模擬。 數(shù)據(jù)模型應(yīng)滿足三方面要求:能比較真實(shí)的模擬現(xiàn)實(shí)世界容易為人理解便于計(jì)算機(jī)實(shí)現(xiàn)在數(shù)據(jù)庫系統(tǒng)中針對(duì)不同的使用對(duì)象和應(yīng)用目的,采用不同的數(shù)據(jù)模型。1.1.3 數(shù)據(jù)模型1兩類數(shù)據(jù)模型根據(jù)模型應(yīng)用的目的不同,可以將這些模型分為兩類:概念模型邏輯模型和物理模型1.1.3 數(shù)據(jù)模型1兩類數(shù)據(jù)模型概念模型也稱信息模型,是按用戶的觀

6、點(diǎn)對(duì)數(shù)據(jù)和信息進(jìn)行抽象,主要用于數(shù)據(jù)庫設(shè)計(jì)。1.1.3 數(shù)據(jù)模型1兩類數(shù)據(jù)模型邏輯模型主要包括層次模型、網(wǎng)狀模型、關(guān)系模型、面向?qū)ο竽P秃蛯?duì)象關(guān)系模型等它是按照計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對(duì)數(shù)據(jù)建模,主要用于DBMS的實(shí)現(xiàn)。物理模型是對(duì)數(shù)據(jù)最低層的抽象,它描述數(shù)據(jù)在計(jì)算機(jī)系統(tǒng)內(nèi)部的表示方式和存取方法,以及在存儲(chǔ)設(shè)備上的存儲(chǔ)方式和存取方法,是面向計(jì)算機(jī)系統(tǒng)的。物理模型由DBMS實(shí)現(xiàn)。1.1.3 數(shù)據(jù)模型1兩類數(shù)據(jù)模型從事物的客觀特性到計(jì)算機(jī)里的具體表示經(jīng)歷了三個(gè)數(shù)據(jù)領(lǐng)域:現(xiàn)實(shí)世界、信息世界和機(jī)器世界。為了把現(xiàn)實(shí)世界中的具體事物抽象、組織為某一DBMS支持的數(shù)據(jù)模型,常常首先將現(xiàn)實(shí)世界抽象為信息世界,然后將信

7、息世界轉(zhuǎn)換為機(jī)器世界。1.1.3 數(shù)據(jù)模型1.1.3 數(shù)據(jù)模型2數(shù)據(jù)模型的組成要素(1)數(shù)據(jù)結(jié)構(gòu)(2)數(shù)據(jù)操作(3)數(shù)據(jù)約束1.1.3 數(shù)據(jù)模型2數(shù)據(jù)模型的組成要素(1)數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)模型中的數(shù)據(jù)結(jié)構(gòu)主要描述數(shù)據(jù)的類型、內(nèi)容、性質(zhì)以及數(shù)據(jù)間的聯(lián)系等。(2)數(shù)據(jù)操作數(shù)據(jù)模型中的數(shù)據(jù)操作主要描述在相應(yīng)的數(shù)據(jù)結(jié)構(gòu)上的操作類型和操作方式。 1.1.3 數(shù)據(jù)模型2數(shù)據(jù)模型的組成要素(3)數(shù)據(jù)約束數(shù)據(jù)模型中的數(shù)據(jù)約束主要描述數(shù)據(jù)結(jié)構(gòu)內(nèi)數(shù)據(jù)間的語法、詞義聯(lián)系、它們之間的制約和依存關(guān)系,以及數(shù)據(jù)動(dòng)態(tài)變化的規(guī)則,以保證數(shù)據(jù)的正確、有效和相容。1.1.3 數(shù)據(jù)模型3概念模型概念模型是按用戶的觀點(diǎn)對(duì)數(shù)據(jù)和信息進(jìn)行抽象

8、。 “實(shí)體聯(lián)系方法”是表示概念模型最常用的方法。1.1.3 數(shù)據(jù)模型3概念模型(1)實(shí)體(Entity)(2)屬性(Attribute)(3)實(shí)體集(Entity Set)(4)實(shí)體型(Entity Type)(5)碼(Key)(6)域(Domain)1.1.3 數(shù)據(jù)模型3概念模型(7)聯(lián)系(Relationship)兩個(gè)實(shí)體型之間的聯(lián)系可以分為三類:一對(duì)一聯(lián)系(1:1)一對(duì)多聯(lián)系(1:n)多對(duì)多聯(lián)系(m:n)1.1.3 數(shù)據(jù)模型4概念模型的一種表示方法:實(shí)體-聯(lián)系方法該方法用E-R圖來描述現(xiàn)實(shí)世界的概念模型,稱為實(shí)體-聯(lián)系模型,簡(jiǎn)稱E-R模型。E-R圖提供了表示實(shí)體型、屬性和聯(lián)系的方法。實(shí)體

9、型:用矩形表示,矩形框內(nèi)寫明實(shí)體名。屬性:用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來。聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型。1.1.3 數(shù)據(jù)模型4概念模型的一種表示方法:實(shí)體-聯(lián)系方法該方法用E-R圖來描述現(xiàn)實(shí)世界的概念模型,稱為實(shí)體-聯(lián)系模型,簡(jiǎn)稱E-R模型。E-R圖提供了表示實(shí)體型、屬性和聯(lián)系的方法。實(shí)體型:用矩形表示,矩形框內(nèi)寫明實(shí)體名。屬性:用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來。聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型。1.1.3 數(shù)據(jù)模型5最常

10、用的數(shù)據(jù)模型(1)層次模型(Hierarchical Model)數(shù)據(jù)庫系統(tǒng)中最早出現(xiàn)的數(shù)據(jù)模型,典型的采用層次模型的數(shù)據(jù)庫系統(tǒng)是美國IBM公司于1968年推出的IMS(Information Management System)數(shù)據(jù)庫管理系統(tǒng),這個(gè)系統(tǒng)在20世紀(jì)70年代在商業(yè)上得到廣泛應(yīng)用。1.1.3 數(shù)據(jù)模型5最常用的數(shù)據(jù)模型(1)層次模型(Hierarchical Model)層次模型是用樹型結(jié)構(gòu)來表示各類實(shí)體及實(shí)體間的聯(lián)系。這種模型描述數(shù)據(jù)的組織形式像一棵倒置的樹,它由節(jié)點(diǎn)和連線組成,其中節(jié)點(diǎn)表示實(shí)體。根節(jié)點(diǎn)只有一個(gè),向下分支,是一種一對(duì)多的關(guān)系。層次模型的查詢效率很高,但它只能表示一

11、對(duì)多聯(lián)系,對(duì)數(shù)據(jù)進(jìn)行查詢和更新操作時(shí)則很復(fù)雜,所以編寫應(yīng)用程序也很復(fù)雜。1.1.3 數(shù)據(jù)模型5最常用的數(shù)據(jù)模型(1)層次模型(Hierarchical Model)優(yōu)點(diǎn):層次分明、結(jié)構(gòu)清晰、不同層次間的數(shù)據(jù)關(guān)聯(lián)直接簡(jiǎn)單。缺點(diǎn):數(shù)據(jù)將不得不縱向向外擴(kuò)展,節(jié)點(diǎn)之間很難建立橫向的關(guān)聯(lián)。對(duì)插入和刪除操作限制較多,查詢非直系的節(jié)點(diǎn)非常麻煩。1.1.3 數(shù)據(jù)模型1.1.3 數(shù)據(jù)模型5最常用的數(shù)據(jù)模型(2)網(wǎng)狀模型(Network Model)用有向圖結(jié)構(gòu)表示實(shí)體類型及實(shí)體間聯(lián)系的數(shù)據(jù)模型稱為網(wǎng)狀模型。用節(jié)點(diǎn)表示數(shù)據(jù)元素,節(jié)點(diǎn)間連線表示數(shù)據(jù)間的聯(lián)系。它允許多個(gè)節(jié)點(diǎn)沒有雙親節(jié)點(diǎn),允許節(jié)點(diǎn)有多個(gè)雙親節(jié)點(diǎn),還允許

12、兩個(gè)節(jié)點(diǎn)之間有多種聯(lián)系。節(jié)點(diǎn)之間是平等的,無上下層關(guān)系。1.1.3 數(shù)據(jù)模型1.1.3 數(shù)據(jù)模型5最常用的數(shù)據(jù)模型(3)關(guān)系模型(Relational Model)目前最重要的一種數(shù)據(jù)模型。用二維表格來表示實(shí)體及相互之間的聯(lián)系。建立在嚴(yán)格的數(shù)學(xué)基礎(chǔ)之上。目前采用關(guān)系模型的數(shù)據(jù)庫管理系統(tǒng):Microsoft SQL Server、Oracle、IBM DB2、Access1.1.3 數(shù)據(jù)模型5最常用的數(shù)據(jù)模型(4)面向?qū)ο竽P停∣bject-Oriented Model)在面向?qū)ο蟮臄?shù)據(jù)模型中,最基本的概念為對(duì)象和類。面向?qū)ο蟮臄?shù)據(jù)模型可完整地描述現(xiàn)實(shí)世界的數(shù)據(jù)結(jié)構(gòu),比層次、網(wǎng)狀、關(guān)系數(shù)據(jù)模型具

13、有更加豐富的表達(dá)能力,能表達(dá)嵌套、遞歸的數(shù)據(jù)結(jié)構(gòu)。1.1.4 數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)1數(shù)據(jù)庫的三級(jí)模式結(jié)構(gòu)數(shù)據(jù)庫結(jié)構(gòu)分為三級(jí):面向用戶或應(yīng)用程序員的用戶級(jí)面向建立和維護(hù)數(shù)據(jù)庫人員的概念級(jí)面向系統(tǒng)程序員的物理級(jí)。用戶級(jí)對(duì)應(yīng)外模式,概念級(jí)對(duì)應(yīng)模式,物理級(jí)對(duì)應(yīng)內(nèi)模式,使不同級(jí)別的用戶對(duì)數(shù)據(jù)庫形成不同的視圖。1.1.4 數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)1數(shù)據(jù)庫的三級(jí)模式結(jié)構(gòu)(1)模式模式又稱概念模式或邏輯模式,對(duì)應(yīng)于概念級(jí)。是對(duì)數(shù)據(jù)庫中全部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的總體描述,是所有用戶的公共數(shù)據(jù)視圖(全局視圖)。由數(shù)據(jù)庫管理系統(tǒng)提供的數(shù)據(jù)模式描述語言(Data Description Language,DDL)來描述、

14、定義的,體現(xiàn)、反映了數(shù)據(jù)庫系統(tǒng)的整體觀。1.1.4 數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)1數(shù)據(jù)庫的三級(jí)模式結(jié)構(gòu)(2)外模式外模式又稱子模式,對(duì)應(yīng)于用戶級(jí)。它是某個(gè)或某幾個(gè)用戶所看到的數(shù)據(jù)庫的數(shù)據(jù)視圖,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示。外模式是從模式導(dǎo)出的一個(gè)子集,包含模式中允許特定用戶使用的那部分?jǐn)?shù)據(jù)。用戶可以通過外模式描述語言來描述、定義對(duì)應(yīng)于用戶的數(shù)據(jù)記錄(外模式),也可以利用數(shù)據(jù)操縱語言對(duì)這些數(shù)據(jù)記錄進(jìn)行操作。外模式反映了數(shù)據(jù)庫的用戶觀。1.1.4 數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)1數(shù)據(jù)庫的三級(jí)模式結(jié)構(gòu)(3)內(nèi)模式內(nèi)模式又稱存儲(chǔ)模式,對(duì)應(yīng)于物理級(jí),它是數(shù)據(jù)庫中全體數(shù)據(jù)的內(nèi)部表示或底層描述,是數(shù)據(jù)庫最低一級(jí)的邏輯描述

15、。描述了數(shù)據(jù)在存儲(chǔ)介質(zhì)上的存儲(chǔ)方式即物理結(jié)構(gòu),對(duì)應(yīng)著實(shí)際存儲(chǔ)在外存儲(chǔ)介質(zhì)上的數(shù)據(jù)庫。內(nèi)模式由內(nèi)模式描述語言來描述、定義,它是數(shù)據(jù)庫的存儲(chǔ)觀。1.1.4 數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)1數(shù)據(jù)庫的三級(jí)模式結(jié)構(gòu)在一個(gè)數(shù)據(jù)庫系統(tǒng)中,只有唯一的數(shù)據(jù)庫,因而作為定義、描述數(shù)據(jù)庫存儲(chǔ)結(jié)構(gòu)的內(nèi)模式和定義、描述數(shù)據(jù)庫邏輯結(jié)構(gòu)的模式,也是唯一的;但建立在數(shù)據(jù)庫系統(tǒng)之上的應(yīng)用則是非常廣泛、多樣的,所以對(duì)應(yīng)的外模式不是唯一的,也不可能是唯一的。1.1.4 數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)2三級(jí)模式間的映射 (1)外模式/模式映像定義了該外模式與模式之間的對(duì)應(yīng)關(guān)系。當(dāng)模式改變時(shí),由數(shù)據(jù)庫管理員對(duì)各個(gè)外模式/模式映像做相應(yīng)的改變,就可以使外模

16、式保持不變。應(yīng)用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應(yīng)用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨(dú)立性,簡(jiǎn)稱為數(shù)據(jù)的邏輯獨(dú)立性。1.1.4 數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)2三級(jí)模式間的映射 (2)模式/內(nèi)模式映像定義了數(shù)據(jù)庫全局邏輯結(jié)構(gòu)與物理存儲(chǔ)結(jié)構(gòu)之間的對(duì)應(yīng)關(guān)系。當(dāng)數(shù)據(jù)庫的物理存儲(chǔ)結(jié)構(gòu)改變時(shí),由數(shù)據(jù)庫管理員對(duì)模式/內(nèi)模式映像做相應(yīng)的改變,就可以使模式保持不變。從而應(yīng)用程序也不必改變。這樣就保證了程序與數(shù)據(jù)的物理獨(dú)立性,簡(jiǎn)稱為數(shù)據(jù)的物理獨(dú)立性。1.1.4 數(shù)據(jù)庫系統(tǒng)的體系結(jié)構(gòu)3數(shù)據(jù)庫的三級(jí)模式結(jié)構(gòu)的好處(1)保證了數(shù)據(jù)的獨(dú)立性(2)簡(jiǎn)化用戶接口(3)有利于數(shù)據(jù)共享(4)有利于數(shù)據(jù)安全保密1.2 關(guān)系數(shù)據(jù)庫1.

17、2.1 關(guān)系數(shù)據(jù)模型在關(guān)系數(shù)據(jù)庫里,所有的數(shù)據(jù)都按表(按關(guān)系理論的術(shù)語,表被稱為“關(guān)系”)進(jìn)行組織和管理。實(shí)體和聯(lián)系均用二維表來表示的數(shù)據(jù)模型稱為關(guān)系數(shù)據(jù)模型,二維表由行和列組成。1.2.1 關(guān)系數(shù)據(jù)模型1.2.1 關(guān)系數(shù)據(jù)模型(1)關(guān)系(Relation):一個(gè)關(guān)系可用一個(gè)二維表格來表示,常稱為表。每個(gè)關(guān)系(表)都有與其它關(guān)系(表)不同的名稱。(2)元組(Tuple):表中的一行數(shù)據(jù)統(tǒng)稱為一個(gè)元組。一個(gè)元組即為一個(gè)實(shí)體的所有屬性值的總稱。一個(gè)關(guān)系中不能有兩個(gè)完全相同的元組。(3)屬性(Attribute):表中的每一列即為一個(gè)屬性。每個(gè)屬性都有一個(gè)屬性名,在每一列的首行顯示。一個(gè)關(guān)系中不能有

18、兩個(gè)同名屬性。1.2.1 關(guān)系數(shù)據(jù)模型(4)域(Domain):一個(gè)屬性的取值范圍就是該屬性的域。(5)分量(Component):一個(gè)元組在一個(gè)屬性上的值稱為該元組在此屬性上的分量,一個(gè)n元組是由n個(gè)分量組成。(6)候選鍵(Candidate Key):如果一個(gè)屬性集能唯一標(biāo)識(shí)元組,且又不含有多余的屬性,那么這個(gè)屬性集稱為關(guān)系的候選鍵或候選碼。候選碼中的所有屬性都為主屬性。1.2.1 關(guān)系數(shù)據(jù)模型(7)主關(guān)鍵字(Primary Key):如果一個(gè)關(guān)系中有多個(gè)候選鍵,則選擇其中的一個(gè)鍵為關(guān)系的主關(guān)鍵字,簡(jiǎn)稱主鍵或主碼。(8)外鍵(Foreign Key):如果一個(gè)關(guān)系中某個(gè)屬性或?qū)傩越M合并非主

19、關(guān)鍵字,但卻是另外一個(gè)關(guān)系的主關(guān)鍵字,則稱此屬性或?qū)傩越M合為本關(guān)系的外部關(guān)鍵字或外鍵。在關(guān)系數(shù)據(jù)庫中,用外鍵表示兩個(gè)關(guān)系間的聯(lián)系。(9)關(guān)系模式:一個(gè)關(guān)系的關(guān)系名及其全部屬性的集合,簡(jiǎn)稱為關(guān)系模式。一般表示為:關(guān)系名(屬性1,屬性2,屬性n)1.2.1 關(guān)系數(shù)據(jù)模型關(guān)系模式是型,描述了一個(gè)關(guān)系的結(jié)構(gòu)。關(guān)系是值,是元組的集合,是某一時(shí)刻關(guān)系模式的狀態(tài)或內(nèi)容。關(guān)系模式是穩(wěn)定的、靜態(tài)的,而關(guān)系則是隨時(shí)間變化的、動(dòng)態(tài)的。在不引起混淆的場(chǎng)合,兩者都稱為關(guān)系。1.2.1 關(guān)系數(shù)據(jù)模型關(guān)系模型要求關(guān)系必須是規(guī)范化的,即要求關(guān)系必須滿足一定的規(guī)范條件:(1)關(guān)系中的每一列都必須是不可分的基本數(shù)據(jù)項(xiàng),即不允許表

20、中還有表。(2)一個(gè)關(guān)系中有唯一確定的屬性名,不可重名。(3)任何列中的值必須是同一類型的,各列被指定一個(gè)相異的名字。(4)在一個(gè)關(guān)系中,屬性間的順序、元組間的順序是無關(guān)緊要的。1.2.1 關(guān)系數(shù)據(jù)模型在關(guān)系數(shù)據(jù)庫中具有相同屬性的記錄的集合構(gòu)成一個(gè)“數(shù)據(jù)表”。一個(gè)或多個(gè)數(shù)據(jù)表的集合組成一個(gè)“數(shù)據(jù)庫”。隸屬于某個(gè)數(shù)據(jù)庫的數(shù)據(jù)表叫“相關(guān)表或數(shù)據(jù)表”。獨(dú)立存在于任何數(shù)據(jù)庫之外的表叫“自由表”。1.2.2 關(guān)系的完整性約束數(shù)據(jù)庫完整性(DataBase Integrity)是指數(shù)據(jù)庫中數(shù)據(jù)的正確性和相容性。數(shù)據(jù)庫完整性約束可以通過DBMS或應(yīng)用程序來實(shí)現(xiàn),基于DBMS的完整性約束作為模式的一部分存入數(shù)

21、據(jù)庫中。在關(guān)系數(shù)據(jù)模型中一般將數(shù)據(jù)完整性分為三類:實(shí)體完整性、參照完整性和用戶定義完整性。1.2.2 關(guān)系的完整性約束1實(shí)體完整性實(shí)體完整性規(guī)定表的每一行在表中是唯一的實(shí)體。實(shí)體完整性和參照完整性是關(guān)系模型必須滿足的完整性約束條件,被稱作是關(guān)系的兩個(gè)不變特性。1.2.2 關(guān)系的完整性約束1實(shí)體完整性實(shí)體完整性規(guī)則如下:實(shí)體完整性要保證關(guān)系中的每個(gè)元組都是可識(shí)別的和唯一的。實(shí)體完整性規(guī)則內(nèi)容:若屬性A是關(guān)系R的主屬性,則屬性A不可以為空值。實(shí)體完整性是關(guān)系模型必須滿足的完整性約束條件。關(guān)系數(shù)據(jù)庫管理系統(tǒng)可用主關(guān)鍵字實(shí)現(xiàn)實(shí)體完整性,這是由關(guān)系數(shù)據(jù)庫默認(rèn)支持的。1.2.2 關(guān)系的完整性約束2參照完整

22、性參照完整性是指兩個(gè)表的主關(guān)鍵字和外關(guān)鍵字的數(shù)據(jù)對(duì)應(yīng)一致。它確保了有主關(guān)鍵字的表中對(duì)應(yīng)其他表的外關(guān)鍵字的數(shù)據(jù)存在,即保證了表之間的數(shù)據(jù)的一致性,防止數(shù)據(jù)丟失或無意義的數(shù)據(jù)在數(shù)據(jù)庫中擴(kuò)散。參照完整性是建立在外關(guān)鍵字和主關(guān)鍵字之間或外關(guān)鍵字和唯一性關(guān)鍵字之間的關(guān)系上的。1.2.2 關(guān)系的完整性約束3用戶定義完整性用戶定義的完整性即是針對(duì)某個(gè)特定關(guān)系數(shù)據(jù)庫的約束條件,它反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要求。在用戶定義完整性中最常見的是限定屬性的取值范圍,即對(duì)值域的約束,所以在用戶定義完整性中最常見的是域完整性約束,如某個(gè)屬性的值必須唯一;某個(gè)屬性的值必須在某個(gè)范圍內(nèi)等。1.2.3 關(guān)系運(yùn)算

23、關(guān)系代數(shù)是一種抽象的查詢語言,是關(guān)系數(shù)據(jù)操縱語言的一種傳統(tǒng)表達(dá)方式。它用于關(guān)系運(yùn)算及表達(dá)式查詢。關(guān)系運(yùn)算符有四類:集合運(yùn)算符專門的關(guān)系運(yùn)算符算術(shù)比較運(yùn)算符邏輯運(yùn)算符1.2.3 關(guān)系運(yùn)算1.2.3 關(guān)系運(yùn)算1傳統(tǒng)的集合運(yùn)算傳統(tǒng)的集合運(yùn)算是從關(guān)系的水平方向進(jìn)行的,主要包括:并交差廣義笛卡兒積1.2.3 關(guān)系運(yùn)算1傳統(tǒng)的集合運(yùn)算(1)并(Union)運(yùn)算關(guān)系R、S同為n元關(guān)系,則R與S的并記作:RStRtS。其結(jié)果仍是n元關(guān)系,由屬于R或?qū)儆赟的元組組成。(2)交(Intersection)運(yùn)算關(guān)系R、S同為n元關(guān)系,則關(guān)系R與S的交記作:RStRtS。其結(jié)果仍是n元關(guān)系,由屬于R且屬于S的元組組成

24、。1.2.3 關(guān)系運(yùn)算1傳統(tǒng)的集合運(yùn)算(3)差(Difference)運(yùn)算關(guān)系R、S同為n元關(guān)系,則關(guān)系R與S的差記作:R-StRtS。其結(jié)果仍是n元關(guān)系,由屬于R且不屬于S的元組組成。(4)廣義笛卡兒積(Extended Cartesian Product) 兩個(gè)分別為n目和m目的關(guān)系R和S,R和S的廣義笛卡兒積是一個(gè)(n+m)列元組的集合。1.2.3 關(guān)系運(yùn)算1傳統(tǒng)的集合運(yùn)算(4)廣義笛卡兒積(Extended Cartesian Product) 元組的前n列是關(guān)系R的一個(gè)元組,后m列是關(guān)系S的一個(gè)元組。若R有K1個(gè)元組,S有K2個(gè)元組,則R和S的廣義笛卡兒積有 K1K2 個(gè)元組。記作:

25、RS trts | trRtsS。trts表示由兩個(gè)元組tr 和ts前后有序連接而成的一個(gè)元組。任取元組tr 和ts,當(dāng)且僅當(dāng)tr屬于R中元組且ts屬于S中元組時(shí),tr 和ts前后有序連接即為RS的一個(gè)元組。1.2.3 關(guān)系運(yùn)算1傳統(tǒng)的集合運(yùn)算(4)廣義笛卡兒積(Extended Cartesian Product) 實(shí)際操作時(shí),可從R的第一個(gè)元組開始,依次與S的每一個(gè)元組組合,然后對(duì)R的下一個(gè)元組進(jìn)行相同的操作,直至R的最后一個(gè)元組也進(jìn)行了相同的操作為止,即可得到RS的所有元組。由廣義笛卡兒積可得關(guān)系的數(shù)學(xué)定義:設(shè)A1,A2,An為任意集合,A1A2An的任意一個(gè)子集稱為A1,A2,An上的

26、一個(gè)n元關(guān)系。1.2.3 關(guān)系運(yùn)算2專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算可以從關(guān)系的水平方向進(jìn)行運(yùn)算,也可以從關(guān)系的垂直方向運(yùn)算。(1) 選擇運(yùn)算(Selection)(2)投影運(yùn)算(Projection)(3)連接運(yùn)算(Join)(4)除運(yùn)算(Division)1.2.3 關(guān)系運(yùn)算2專門的關(guān)系運(yùn)算(1) 選擇運(yùn)算(Selection)選擇運(yùn)算又稱為限制(Restriction)運(yùn)算,它是從給定的關(guān)系R中選取滿足條件的元組,即從數(shù)據(jù)表中進(jìn)行選行操作,記作F(R)=t|tRF(t)=真 其中F表示選擇條件,它是一個(gè)邏輯表達(dá)式,取邏輯值“真”或“假”。公式F中的運(yùn)算對(duì)象是常量(用引號(hào)括起來)或元組分量(屬

27、性名或列的序號(hào)),運(yùn)算符有算術(shù)比較運(yùn)算符和邏輯運(yùn)算符。1.2.3 關(guān)系運(yùn)算2專門的關(guān)系運(yùn)算(1) 選擇運(yùn)算(Selection)選擇運(yùn)算提供了一種“橫向分割關(guān)系”的手段。以邏輯表達(dá)式為選擇條件,篩選滿足表達(dá)式的所有記錄。選擇操作的結(jié)果構(gòu)成關(guān)系的一個(gè)子集,是關(guān)系中的部分行,其關(guān)系模式不變。選擇操作是從二維表中選擇若干行的操作。例1-1:在AWLT數(shù)據(jù)庫中,查詢顏色為紅色的所有產(chǎn)品。Color=Red(Product)1.2.3 關(guān)系運(yùn)算2專門的關(guān)系運(yùn)算(2)投影運(yùn)算(Projection)這個(gè)操作是對(duì)一個(gè)關(guān)系進(jìn)行垂直分割,消去某些列,并重新安排列的順序,再刪去重復(fù)元組。投影是從給定關(guān)系的所有字段

28、中按某種順序選取指定的屬性組,即從數(shù)據(jù)表中進(jìn)行選擇列操作。所選擇的若干屬性將形成一個(gè)新的關(guān)系數(shù)據(jù)表,其關(guān)系模式中屬性的個(gè)數(shù)由用戶來確定,或者排列順序不同,同時(shí)也可能減少某些元組。1.2.3 關(guān)系運(yùn)算2專門的關(guān)系運(yùn)算(2)投影運(yùn)算(Projection)例1-2:AWLT數(shù)據(jù)庫中,查詢所有產(chǎn)品的產(chǎn)品編號(hào)、名稱及其顏色。ProductNumber , Name , Color(Product)1.2.3 關(guān)系運(yùn)算2專門的關(guān)系運(yùn)算(3)連接運(yùn)算(Join)連接運(yùn)算用來連接相互之間有聯(lián)系的兩個(gè)關(guān)系,從而形成一個(gè)新的關(guān)系。連接操作是廣義笛卡兒積和選擇操作的組合。一般情況下這個(gè)連接屬性是出現(xiàn)在不同關(guān)系中的

29、語義相同的屬性,屬性名稱有可能不同。連接運(yùn)算也稱連接。連接運(yùn)算形式定義如下:RS=AB(RS) AB1.2.3 關(guān)系運(yùn)算2專門的關(guān)系運(yùn)算(3)連接運(yùn)算(Join)其中,A和B分別是關(guān)系R和S上語義相同的屬性或?qū)傩越M,是比較運(yùn)算符。連接運(yùn)算從關(guān)系R和S的笛卡兒積RS中選取R關(guān)系在A屬性組上的值與S關(guān)系在B屬性組上值滿足比較運(yùn)算的元組。連接運(yùn)算中最重要也是最常用的兩個(gè)連接:等值連接自然連接1.2.3 關(guān)系運(yùn)算2專門的關(guān)系運(yùn)算(3)連接運(yùn)算(Join)如果為等號(hào)“=”,那么這個(gè)連接操作稱為等值連接,它是從關(guān)系R與關(guān)系S的廣義笛卡爾積中選取A與B屬性值相等的元組。自然連接是一種特殊的連接,它要求兩個(gè)關(guān)

30、系中進(jìn)行比較的分量必須是相同的屬性組,并且在結(jié)果中要去掉重復(fù)的屬性列,即若關(guān)系R和S具有相同的屬性組B,則自然連接可形式定義為:RS= trts | trRtsStrB=ts B1.2.3 關(guān)系運(yùn)算2專門的關(guān)系運(yùn)算(3)連接運(yùn)算(Join)一般的連接運(yùn)算是從行的角度進(jìn)行運(yùn)算自然連接還需要去掉重復(fù)的列,所以是同時(shí)從行和列的角度進(jìn)行運(yùn)算。1.2.3 關(guān)系運(yùn)算2專門的關(guān)系運(yùn)算(4)除運(yùn)算(Division)給定關(guān)系R(X,Y)和S(Y,Z),其中X,Y,Z為屬性組。R中的Y 與S中的Y可以有不同的屬性名,但必須出自相同的域集。R與S 的除運(yùn)算得到一個(gè)新的關(guān)系P(X),P是R中滿足下列條件的元組在X屬

31、性列上的投影:元組在X上分量值x的象集Yx包含S在Y上投影的集合。記作:RS=trX|trRY(S) Yx除操作是同時(shí)從行和列角度進(jìn)行運(yùn)算。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化關(guān)系數(shù)據(jù)庫理論主要包括三方面的內(nèi)容:數(shù)據(jù)依賴范式模式設(shè)計(jì)方法其中數(shù)據(jù)依賴起核心作用1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化1數(shù)據(jù)依賴數(shù)據(jù)依賴是通過一個(gè)關(guān)系中屬性間值的相等與否體現(xiàn)出來的數(shù)據(jù)間的相互關(guān)系,是現(xiàn)實(shí)世界屬性間相互聯(lián)系的抽象,是數(shù)據(jù)內(nèi)在的性質(zhì),是語義的體現(xiàn)。人們已經(jīng)提出了許多種類型的數(shù)據(jù)依賴,其中最重要的是:函數(shù)依賴(FD:Functional Dependency)多值依賴(MVD:Multivalued Dependency

32、)1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化2函數(shù)依賴(1)函數(shù)依賴的定義定義1-1:設(shè)R(U)是屬性集U上的一個(gè)關(guān)系模式,X和Y 均為U上的子集,即XU,YU。若對(duì)于R的任意一個(gè)可能的關(guān)系r,如果r中不存在兩個(gè)元組,它們?cè)赬上的屬性值相同,而在Y上的屬性值不同(或說對(duì)于在X上的每一種取值,在Y上都只有唯一對(duì)應(yīng)的取值),則稱“X函數(shù)確定Y”或“Y函數(shù)依賴于X”。記作XY。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化2函數(shù)依賴(1)函數(shù)依賴的定義例1-5:指出學(xué)生關(guān)系中的函數(shù)依賴:U=sno,sname,sage,ssex,sclass現(xiàn)實(shí)語義:每個(gè)學(xué)生只能有唯一的一個(gè)學(xué)號(hào);學(xué)生姓名可能重名;學(xué)號(hào)確定了,姓名等值都能唯一

33、確定。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化2函數(shù)依賴(1)函數(shù)依賴的定義例1-5:指出學(xué)生關(guān)系中的函數(shù)依賴:所以可以得到屬性間的函數(shù)依賴:F=snosname,snosage,snossex,snosclass若XY,并且Y是X的子集,則稱為平凡的函數(shù)依賴;否則稱為非平凡的函數(shù)依賴。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化2函數(shù)依賴(2)完全函數(shù)依賴與部分函數(shù)依賴定義1-2:設(shè)XY是一個(gè)函數(shù)依賴,并且對(duì)于任何X屬于X,XY都不成立,則稱XY是一個(gè)完全函數(shù)依賴,即Y完全函數(shù)依賴于X。記作X Y。如:(sno,cno)grade,因?yàn)槊總€(gè)學(xué)生可以選擇多門課程,每門課程可由多名學(xué)生選修,因此學(xué)號(hào)和課程號(hào)唯一確定成績(jī)

34、。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化2函數(shù)依賴(2)完全函數(shù)依賴與部分函數(shù)依賴設(shè)XY是一個(gè)函數(shù)依賴,但Y不是完全函數(shù)依賴于X,則稱XY是一個(gè)部分函數(shù)依賴或稱Y函數(shù)依賴于X的某個(gè)真子集。記作X Y。如(sno,sage) snamePPP1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化2函數(shù)依賴(3)傳遞函數(shù)依賴定義1-3:設(shè)R(U)是一個(gè)關(guān)系模式,X,Y,Z屬于U(U的子集),如果XY(Y不是X的子集),Y X, YZ(Z不是Y的子集),則稱Z傳遞依賴于X。如:student關(guān)系模式:U=sno,sname,ssex,sage,sdept,mnameF=snosdept,sdeptmname,可以推出mname(系

35、主任)傳遞依賴于sno。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化3關(guān)系的規(guī)范化和范式規(guī)范化理論是E.F.Codd首先提出的。一個(gè)關(guān)系數(shù)據(jù)庫中的關(guān)系,都應(yīng)滿足一定的規(guī)范,才能構(gòu)造出好的數(shù)據(jù)模式。Codd把應(yīng)滿足的規(guī)范分成幾級(jí),每一級(jí)稱為一個(gè)范式(Normal Form)。范式的等級(jí)越高,應(yīng)滿足的條件也越嚴(yán)。 1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化3關(guān)系的規(guī)范化和范式第一范式(1NF)第二范式(2NF)第三范式(3NF)BC范式(BCNF)第四范式(4NF)第五范式(5NF)1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化(1)第一范式關(guān)系R中的每個(gè)屬性(列)都是不可再分的,或每個(gè)屬性的域都只包含單純值,而不是一些值的集合,則稱關(guān)系

36、R滿足第一范式。記為R1NF。判斷方法:檢查關(guān)系表中每個(gè)屬性值是否都是不可再分解的最小數(shù)據(jù)單位。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化(1)第一范式將非第一范式規(guī)范為第一范式的方法:依次檢查每個(gè)屬性的取值,如果是組合情況,即不是最小單位,就進(jìn)行屬性值的最小化拆分。在任何一個(gè)關(guān)系數(shù)據(jù)庫中,第一范式(1NF)是對(duì)關(guān)系模式的基本要求,不滿足第一范式(1NF)的數(shù)據(jù)庫就不是關(guān)系數(shù)據(jù)庫。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化(2)第二范式若R1NF,并且每個(gè)非主屬性都完全函數(shù)依賴于R的主碼,則稱為滿足第二范式,記為R2NF。規(guī)范為第二范式的方法:將能完全依賴于主鍵的屬性從關(guān)系中提取出來,同主鍵一起組成一個(gè)關(guān)系;將剩余的

37、屬性同能完全依賴于主鍵的一部分組成一個(gè)關(guān)系。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化(2)第二范式例1-6:下面以一個(gè)學(xué)校的學(xué)生關(guān)系為例分析說明。首先考慮,把所有這些信息放到一個(gè)關(guān)系中,SelectCourse(學(xué)號(hào),學(xué)生姓名、年齡、性別、課程、學(xué)分、系別、成績(jī)、系主任、系辦地址、系辦電話)。存在如下的依賴關(guān)系。(學(xué)號(hào)) (姓名,年齡,性別,系別,系主任、系辦地址、系辦電話)(課程)(學(xué)分)(學(xué)號(hào),課程)(成績(jī))主鍵為(學(xué)號(hào),課程),學(xué)分等部分依賴于主鍵,因此不滿足第二范式的要求。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化(2)第二范式按照前面第二范式規(guī)范化方法,把選課關(guān)系SelectCourse分解為如下三個(gè)關(guān)系

38、: 學(xué)生:Student(學(xué)號(hào),姓名,年齡,性別,系別,系主任,系辦地址,系辦電話); 課程:Course(課程名稱,學(xué)分); 選課關(guān)系:SC(學(xué)號(hào),課程,成績(jī))。 每個(gè)關(guān)系都屬于第二范式。即關(guān)系SelectCourse2NF。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化(3)第三范式若R2NF,并且沒有一個(gè)非主屬性傳遞函數(shù)依賴于候選碼,則稱R為滿足第三范式,記為R3NF。分解為第三范式的方法:設(shè)關(guān)系模式R中,主鍵為X,存在函數(shù)依賴WZ,W不是候選碼,Z是非主屬性且Z不包含于X,因此Z傳遞函數(shù)依賴于X,此時(shí),應(yīng)將R分解成兩個(gè)關(guān)系模式: R1(W,Z),其中W為主鍵 R2(除Z外的所有屬性),X為主鍵,W為外

39、鍵1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化(3)第三范式即將傳遞依賴屬性從關(guān)系中提取出來,同決定因素一起組成一個(gè)關(guān)系;將除傳遞依賴的剩余屬性組成一個(gè)關(guān)系。若R1和R2還不是3NF,則重復(fù)上面的方法,一直到數(shù)據(jù)庫模式中的每一個(gè)關(guān)系模式都是3NF為止。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化(3)第三范式例1-7:接著看上面的學(xué)生表Student(學(xué)號(hào),姓名,年齡,性別,系別,系主任、系辦地址、系辦電話),關(guān)鍵字為:“學(xué)號(hào)”,因?yàn)榇嬖谌缦潞瘮?shù)依賴關(guān)系:(學(xué)號(hào))(姓名,年齡,性別,系別,系主任、系辦地址,系辦電話)但是,還存在下面的函數(shù)依賴關(guān)系:(學(xué)號(hào))(系別)(系別)(系主任、系辦地址,系辦電話)即存在非關(guān)鍵字段“系

40、主任”、“系辦地址”、“系辦電話”對(duì)關(guān)鍵字“學(xué)號(hào)”存在傳遞函數(shù)依賴。會(huì)存在數(shù)據(jù)冗余、更新異常、插入異常和刪除異常的情況。1.2.4 關(guān)系數(shù)據(jù)庫的規(guī)范化(3)第三范式根據(jù)第三范式要求把學(xué)生關(guān)系表分解為如下兩個(gè)表,就可以滿足第三范式了:學(xué)生(學(xué)號(hào),姓名,年齡,性別,系別);系別(系別,系主任、系辦地址,系辦電話)。1.3 關(guān)系數(shù)據(jù)庫的設(shè)計(jì)1.3.1 數(shù)據(jù)庫設(shè)計(jì)概述數(shù)據(jù)庫設(shè)計(jì)(DataBase Design)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效地存儲(chǔ)數(shù)據(jù),滿足各種用戶的應(yīng)用需求,包括信息要求和處理要求。1.3.1 數(shù)據(jù)庫設(shè)計(jì)概述一般來說,好的數(shù)據(jù)庫應(yīng)

41、該滿足以下條件:(1)便于檢索所需要的數(shù)據(jù):在大型的數(shù)據(jù)庫中,由于表的增加,多表中的數(shù)據(jù)很難讀取和理解,數(shù)據(jù)之間的關(guān)系無法在計(jì)算機(jī)屏幕或輸出頁中完整地顯示,因此好的數(shù)據(jù)庫應(yīng)該便于用戶檢索所需要的數(shù)據(jù)。(2)具有較高的完整性、數(shù)據(jù)更新的一致性:好的數(shù)據(jù)庫應(yīng)該能防止不一致信息的引入,避免因各種問題而出現(xiàn)的數(shù)據(jù)的不完整和數(shù)據(jù)之間的不一致。(3)使系統(tǒng)具有盡可能好的性能。1.3.1 數(shù)據(jù)庫設(shè)計(jì)概述數(shù)據(jù)庫設(shè)計(jì)過程可分為六個(gè)階段:需求分析概念結(jié)構(gòu)設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì)物理結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫實(shí)施數(shù)據(jù)庫運(yùn)行和維護(hù)1.3.2 需求分析1需求分析任務(wù)需求分析的任務(wù)是調(diào)查和分析用戶的業(yè)務(wù)活動(dòng)和數(shù)據(jù)的使用情況,弄清所用數(shù)據(jù)的種

42、類、范圍、數(shù)量以及它們?cè)跇I(yè)務(wù)活動(dòng)中交流的情況,確定用戶對(duì)數(shù)據(jù)庫系統(tǒng)的使用要求和各種約束條件等,形成用戶的各種需求。1.3.2 需求分析1需求分析任務(wù)在調(diào)查過程中著重“數(shù)據(jù)”和“處理”,通過調(diào)查、收集與分析,獲得如下要求:(1)信息要求。指用戶從數(shù)據(jù)庫中獲得信息的內(nèi)容和性質(zhì)。由信息要求可以導(dǎo)出數(shù)據(jù)要求,即數(shù)據(jù)庫中存儲(chǔ)什么數(shù)據(jù)。(2)處理要求。指用戶要完成什么樣的處理功能,對(duì)響應(yīng)時(shí)間、處理方式有什么要求。(3)安全性與完整性要求。1.3.2 需求分析2需求分析基本步驟(1)收集資料(2)分析整理資料(3)繪制數(shù)據(jù)流圖(4)編寫數(shù)據(jù)字典1.3.2 需求分析2需求分析基本步驟(1)收集資料(2)分析整

43、理資料(3)繪制數(shù)據(jù)流圖(4)編寫數(shù)據(jù)字典3階段成果系統(tǒng)需求說明書,此說明書主要包括數(shù)據(jù)流圖、數(shù)據(jù)字典、系統(tǒng)功能結(jié)構(gòu)圖等。系統(tǒng)需求說明書作為數(shù)據(jù)庫設(shè)計(jì)的依據(jù)文件。1.3.3 概念結(jié)構(gòu)設(shè)計(jì)將需求分析得到的用戶要求抽象為信息世界的概念模型的過程就是概念結(jié)構(gòu)設(shè)計(jì)。它是整個(gè)數(shù)據(jù)庫設(shè)計(jì)的關(guān)鍵。概念結(jié)構(gòu)設(shè)計(jì)不依賴具體的計(jì)算機(jī)系統(tǒng)和DBMS。1.3.3 概念結(jié)構(gòu)設(shè)計(jì)1概念結(jié)構(gòu)設(shè)計(jì)任務(wù)在需求分析的基礎(chǔ)上,確定系統(tǒng)中所包含的實(shí)體,分析每個(gè)實(shí)體所具有的屬性,以及實(shí)體之間的關(guān)系。 2采用E-R方法的數(shù)據(jù)庫概念設(shè)計(jì)步驟設(shè)計(jì)局部E-R模型局部視圖設(shè)計(jì)即E-R圖設(shè)計(jì);對(duì)局部視圖進(jìn)行集成得到概念視圖。1.3.3 概念結(jié)構(gòu)設(shè)

44、計(jì)(1)設(shè)計(jì)局部E-R模型根據(jù)系統(tǒng)的具體情況,在多層的的數(shù)據(jù)流圖中選擇一個(gè)適當(dāng)層次的數(shù)據(jù)流圖,讓這組圖中每一部分對(duì)應(yīng)一個(gè)局部應(yīng)用,以這一層次的數(shù)據(jù)流圖為出發(fā)點(diǎn),設(shè)計(jì)局部E-R圖。1.3.3 概念結(jié)構(gòu)設(shè)計(jì)(2)局部視圖設(shè)計(jì)策略自頂向下由底向上由內(nèi)向外混合策略1.3.3 概念結(jié)構(gòu)設(shè)計(jì)(3)視圖集成視圖集成的實(shí)質(zhì)是將所有的局部視圖統(tǒng)一并合并成一個(gè)完整的數(shù)據(jù)模式。在進(jìn)行視圖集成時(shí),最重要的工作便是解決局部設(shè)計(jì)中的屬性沖突、命名沖突、概念沖突、結(jié)構(gòu)沖突、約束沖突。 1.3.3 概念結(jié)構(gòu)設(shè)計(jì)(3)視圖集成屬性沖突:屬性值的類型、取值單位、取值范圍或取值集合不同。命名沖突:同名異義和同義異名兩種。概念沖突:

45、同一個(gè)對(duì)象在不同應(yīng)用中具有不同的抽象。在一處為實(shí)體,而在另一處是屬性或聯(lián)系。結(jié)構(gòu)沖突:同一實(shí)體在不同的分E-R圖中所包含的屬性不同。約束沖突:實(shí)體間的聯(lián)系在不同的分E-R圖中表現(xiàn)為不同的類型。1.3.4 邏輯結(jié)構(gòu)設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì)的主要工作是將現(xiàn)實(shí)世界的概念數(shù)據(jù)模型設(shè)計(jì)成數(shù)據(jù)庫的一種邏輯模式,即適應(yīng)于某種特定數(shù)據(jù)庫管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。1.3.4 邏輯結(jié)構(gòu)設(shè)計(jì)1邏輯結(jié)構(gòu)設(shè)計(jì)的步驟(1)將概念結(jié)構(gòu)轉(zhuǎn)化為一般的關(guān)系、網(wǎng)狀、層次模型。(2)將轉(zhuǎn)換來的關(guān)系、網(wǎng)狀、層次模型向特定DBMS支持下的數(shù)據(jù)模型轉(zhuǎn)換。(3)對(duì)數(shù)據(jù)模型進(jìn)行優(yōu)化。1.3.4 邏輯結(jié)構(gòu)設(shè)計(jì)2E-R模型向關(guān)系模型轉(zhuǎn)換規(guī)則(1)一個(gè)

46、實(shí)體轉(zhuǎn)換為一個(gè)關(guān)系模式。實(shí)體屬性就是關(guān)系的屬性,實(shí)體的碼就是關(guān)系的碼。(2)一個(gè)1:1聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與任意一端對(duì)應(yīng)的關(guān)系模式合并。若轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,則相連的每個(gè)實(shí)體的碼及該聯(lián)系的屬性是該關(guān)系的碼,每個(gè)實(shí)體的碼是該關(guān)系的候選碼。(3)一個(gè)1:n聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與n端對(duì)應(yīng)的關(guān)系模式合并。若轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,與該聯(lián)系相連的每個(gè)實(shí)體的碼及該聯(lián)系的屬性是該關(guān)系的碼,n端實(shí)體的碼是該關(guān)系的碼。1.3.4 邏輯結(jié)構(gòu)設(shè)計(jì)2E-R模型向關(guān)系模型轉(zhuǎn)換規(guī)則(4)一個(gè)m:n聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式。與該聯(lián)系相連的各個(gè)實(shí)體的碼及聯(lián)系的屬性轉(zhuǎn)換為關(guān)系的屬性

47、,而該關(guān)系的碼為各實(shí)體碼的組合。(5)三個(gè)或三個(gè)以上實(shí)體間的一個(gè)多元聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式。與該聯(lián)系相連的各個(gè)實(shí)體的碼及聯(lián)系的屬性轉(zhuǎn)換為關(guān)系的屬性,而該關(guān)系的碼為各實(shí)體碼的組合。(6)具有相同碼的關(guān)系模式可合并。為減少系統(tǒng)中的關(guān)系個(gè)數(shù),可以將其中一個(gè)關(guān)系模式的全部屬性加入到另一個(gè)關(guān)系模式中,然后去掉其中的同義屬性(可能同名也可能不同名),并適當(dāng)調(diào)整屬性的次序。1.3.5 物理結(jié)構(gòu)設(shè)計(jì)根據(jù)特定數(shù)據(jù)庫管理系統(tǒng)所提供的多種存儲(chǔ)結(jié)構(gòu)和存取方法等依賴于具體計(jì)算機(jī)結(jié)構(gòu)的各項(xiàng)物理設(shè)計(jì)措施,對(duì)具體的應(yīng)用任務(wù)選定最合適的物理存儲(chǔ)結(jié)構(gòu)(包括文件類型、索引結(jié)構(gòu)和數(shù)據(jù)的存放次序與位邏輯等)、存取方法和存取路徑等,以提

48、高數(shù)據(jù)庫訪問速度及有效利用存儲(chǔ)空間,一般由數(shù)據(jù)庫系統(tǒng)自動(dòng)完成。1.3.6 數(shù)據(jù)庫實(shí)施與維護(hù)1數(shù)據(jù)庫實(shí)施根據(jù)邏輯結(jié)構(gòu)設(shè)計(jì)和物理結(jié)構(gòu)設(shè)計(jì)的結(jié)果,在計(jì)算機(jī)系統(tǒng)上建立起實(shí)際數(shù)據(jù)庫結(jié)構(gòu)、裝入數(shù)據(jù)、測(cè)試和試運(yùn)行的過程稱為數(shù)據(jù)庫的實(shí)施階段。實(shí)施階段主要完成以下三項(xiàng)工作:(1)建立實(shí)際數(shù)據(jù)庫結(jié)構(gòu)。(2)裝入測(cè)試數(shù)據(jù)對(duì)應(yīng)用程序進(jìn)行調(diào)試。(3)裝入實(shí)際數(shù)據(jù),進(jìn)入試運(yùn)行狀態(tài)。1.3.6 數(shù)據(jù)庫實(shí)施與維護(hù)2數(shù)據(jù)庫運(yùn)行與維護(hù)運(yùn)行維護(hù)階段的主要任務(wù)有四項(xiàng):(1)維護(hù)數(shù)據(jù)庫的安全性與完整性。(2)監(jiān)測(cè)并改善數(shù)據(jù)庫運(yùn)行性能。(3)根據(jù)用戶要求對(duì)數(shù)據(jù)庫現(xiàn)有功能進(jìn)行擴(kuò)充。(4)及時(shí)改正運(yùn)行中發(fā)現(xiàn)的系統(tǒng)錯(cuò)誤。1.4 T-SQL語言

49、簡(jiǎn)介結(jié)構(gòu)化查詢語言SQL(Structured Query Language)是一種用于數(shù)據(jù)庫查詢和編程的語言,SQL語言是一種非過程化的語言,它與一般的高級(jí)語言不同,使用SQL時(shí),只要說明做什么,不需要說明怎么做,具體的操作全部由DBMS自動(dòng)完成。1.4 T-SQL語言簡(jiǎn)介微軟公司在SQL標(biāo)準(zhǔn)的基礎(chǔ)上做了大幅度擴(kuò)充,作為SQL Server的結(jié)構(gòu)化查詢語言,并將SQL Server使用的SQL語言稱為Transact-SQL語言,簡(jiǎn)稱T-SQL語言。T-SQL不但包含了標(biāo)準(zhǔn)的SQL語言部分,而且還發(fā)展了許多新的特性,增強(qiáng)了可編程性和靈活性。T-SQL是使用SQL Server的核心。與SQL

50、 Server實(shí)例通信的所有應(yīng)用程序都通過T-SQL語句發(fā)送到服務(wù)器。1.4 T-SQL語言簡(jiǎn)介T-SQL語言也有類似于SQL語言的分類,不過做了許多的擴(kuò)充。T-SQL語言主要由以下幾部分組成:數(shù)據(jù)定義語言(DDL)數(shù)據(jù)操縱語言(DML)數(shù)據(jù)控制語言(DCL)系統(tǒng)存儲(chǔ)過程(System Stored Procedure)一些附加的語言元素本章小結(jié)數(shù)據(jù)庫基本概念數(shù)據(jù)數(shù)據(jù)庫數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫系統(tǒng)本章小結(jié)數(shù)據(jù)庫管理技術(shù)發(fā)展階段:人工管理階段文件系統(tǒng)階段數(shù)據(jù)庫系統(tǒng)階段數(shù)據(jù)結(jié)構(gòu)化數(shù)據(jù)共享性高、冗余少,易擴(kuò)充數(shù)據(jù)獨(dú)立性高有統(tǒng)一的數(shù)據(jù)控制功能本章小結(jié)數(shù)據(jù)模型是對(duì)現(xiàn)實(shí)世界數(shù)據(jù)特征的抽象,是現(xiàn)實(shí)世界的模擬。根

51、據(jù)模型應(yīng)用的目的不同,可以將這些模型分為:概念模型邏輯模型和物理模型數(shù)據(jù)模型由三部分組成:數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)操作數(shù)據(jù)約束本章小結(jié)概念模型是按用戶的觀點(diǎn)對(duì)數(shù)據(jù)和信息進(jìn)行抽象,主要用于數(shù)據(jù)庫設(shè)計(jì),它是對(duì)現(xiàn)實(shí)世界的第一層抽象。“實(shí)體聯(lián)系方法”是表示概念模型最常用的方法。 常見的邏輯模型:層次模型、網(wǎng)狀模型和關(guān)系模型。物理模型是對(duì)數(shù)據(jù)最低層的抽象,它描述數(shù)據(jù)在計(jì)算機(jī)系統(tǒng)內(nèi)部的表示方式和存取方法,以及在存儲(chǔ)設(shè)備上的存儲(chǔ)方式和存取方法,是面向計(jì)算機(jī)系統(tǒng)的。物理模型由DBMS實(shí)現(xiàn)。本章小結(jié)數(shù)據(jù)庫的三級(jí)模式結(jié)構(gòu):模式外模式內(nèi)模式數(shù)據(jù)庫系統(tǒng)三級(jí)模式之間的兩級(jí)映像:外模式/模式映像保證了數(shù)據(jù)與程序的邏輯獨(dú)立性模式/內(nèi)模

52、式映像保證了程序與數(shù)據(jù)的物理獨(dú)立性本章小結(jié)在關(guān)系數(shù)據(jù)庫里,所有的數(shù)據(jù)都按關(guān)系進(jìn)行組織和管理的。關(guān)系數(shù)據(jù)庫系統(tǒng)與非關(guān)系數(shù)據(jù)庫系統(tǒng)的區(qū)別是,關(guān)系系統(tǒng)只有“二維表”這一種數(shù)據(jù)結(jié)構(gòu),而非關(guān)系數(shù)據(jù)庫系統(tǒng)還有其他數(shù)據(jù)結(jié)構(gòu)。本章小結(jié)數(shù)據(jù)庫完整性(DataBase Integrity)是指數(shù)據(jù)庫中數(shù)據(jù)的正確性和相容性。實(shí)體完整性規(guī)定表的每一行在表中是唯一的實(shí)體參照完整性指兩個(gè)表的主關(guān)鍵字和外關(guān)鍵字的數(shù)據(jù)對(duì)應(yīng)一致用戶定義的完整性定義對(duì)關(guān)系中除主鍵與外鍵屬性之外的其他屬性取值的約束,即對(duì)其他屬性的值域的約束本章小結(jié)傳統(tǒng)的集合運(yùn)算是從關(guān)系的水平方向進(jìn)行的,主要包括:并交差廣義笛卡兒積本章小結(jié)專門的關(guān)系運(yùn)算可以從關(guān)系

53、的水平方向進(jìn)行運(yùn)算,也可以從關(guān)系的垂直方向運(yùn)算,主要包括:選擇投影連接除本章小結(jié)關(guān)系規(guī)范化主要討論的就是建立關(guān)系模式的指導(dǎo)原則,關(guān)系數(shù)據(jù)庫規(guī)范化理論稱為設(shè)計(jì)關(guān)系數(shù)據(jù)庫的規(guī)范化理論。關(guān)系數(shù)據(jù)庫理論主要包括三方面的內(nèi)容:數(shù)據(jù)依賴范式模式設(shè)計(jì)方法本章小結(jié)函數(shù)依賴:完全函數(shù)依賴部分函數(shù)依賴傳遞函數(shù)依賴本章小結(jié)第一范式(1NF)第二范式(2NF)第三范式(3NF)本章小結(jié)數(shù)據(jù)庫設(shè)計(jì)(DataBase Design)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效地存儲(chǔ)數(shù)據(jù),滿足各種用戶的應(yīng)用需求,包括信息要求和處理要求。數(shù)據(jù)庫設(shè)計(jì)過程可分為六個(gè)階段:需求分析、概念結(jié)

54、構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)、物理結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)庫實(shí)施、數(shù)據(jù)庫運(yùn)行和維護(hù)。 本章小結(jié)結(jié)構(gòu)化查詢語言SQL是一種用于數(shù)據(jù)庫查詢和編程的語言。包括:數(shù)據(jù)定義數(shù)據(jù)操縱數(shù)據(jù)控制系統(tǒng)存儲(chǔ)過程一些附加的語言元素:包括注釋、變量、運(yùn)算符、函數(shù)和流程控制語句等。 習(xí)題一一、填空題1數(shù)據(jù)庫是長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi)的、 、 的大量數(shù)據(jù)的集合。2數(shù)據(jù)管理技術(shù)經(jīng)歷了 階段、 階段和數(shù)據(jù)庫系統(tǒng)階段。3數(shù)據(jù)的獨(dú)立性是指數(shù)據(jù)的 和 。4數(shù)據(jù)模型由 、 、 三部分組成。1.6 思考與練習(xí)一、填空題5常用的邏輯模型(數(shù)據(jù)模型)主要有層次模型、 、 和對(duì)象模型等幾種。6兩個(gè)實(shí)體型之間的聯(lián)系可以分為: 、 以及 。7在E-R圖中,實(shí)體用 表示

55、,屬性用 表示,聯(lián)系用 表示。8數(shù)據(jù)庫的三級(jí)模式結(jié)構(gòu)包括 、 和內(nèi)模式。1.6 思考與練習(xí)一、填空題9在關(guān)系數(shù)據(jù)模型中一般將數(shù)據(jù)完整性分為三類: 完整性、 完整性和用戶定義完整性。10若對(duì)R,S兩個(gè)關(guān)系進(jìn)行關(guān)系代數(shù)運(yùn)算,其結(jié)果為R1,若R1中的結(jié)果既屬于R又屬于S,是對(duì)關(guān)系進(jìn)行了 運(yùn)算;若R1中的結(jié)果既屬于R或?qū)儆赟,是對(duì)關(guān)系進(jìn)行了 運(yùn)算;若R1中的結(jié)果只屬于R不屬于S,是對(duì)關(guān)系進(jìn)行了 運(yùn)算。 1.6 思考與練習(xí)一、填空題9在關(guān)系數(shù)據(jù)模型中一般將數(shù)據(jù)完整性分為三類: 完整性、 完整性和用戶定義完整性。10若對(duì)R,S兩個(gè)關(guān)系進(jìn)行關(guān)系代數(shù)運(yùn)算,其結(jié)果為R1,若R1中的結(jié)果既屬于R又屬于S,是對(duì)關(guān)系

56、進(jìn)行了 運(yùn)算;若R1中的結(jié)果既屬于R或?qū)儆赟,是對(duì)關(guān)系進(jìn)行了 運(yùn)算;若R1中的結(jié)果只屬于R不屬于S,是對(duì)關(guān)系進(jìn)行了 運(yùn)算。 1.6 思考與練習(xí)一、填空題11選擇運(yùn)算是從關(guān)系的 方向進(jìn)行運(yùn)算;投影運(yùn)算是從關(guān)系的 方向進(jìn)行運(yùn)算。12對(duì)于函數(shù)依賴X-Y,如果Y包含于X,則稱X-Y是一個(gè) 。13如果一個(gè)關(guān)系不滿足2NF,則該關(guān)系一定也不滿足 (在1NF、2NF、3NF范圍內(nèi))。1.6 思考與練習(xí)一、填空題14概念結(jié)構(gòu)設(shè)計(jì)是將 得到的 抽象為信息世界的 的過程。15在數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計(jì)階段,當(dāng)進(jìn)行視圖集成時(shí)要解決的沖突有 、 、 、 和 。16邏輯結(jié)構(gòu)設(shè)計(jì)是將現(xiàn)實(shí)世界的概念模型設(shè)計(jì)成數(shù)據(jù)庫的一種 。1

57、.6 思考與練習(xí)二、選擇題1下面列出的數(shù)據(jù)庫管理技術(shù)發(fā)展的三個(gè)階段中,沒有專門的軟件對(duì)數(shù)據(jù)進(jìn)行管理的是( )。 I人工管理階段 II文件系統(tǒng)階段 III數(shù)據(jù)庫系統(tǒng)階段 AI 和 II B只有 II CII 和 III D只有 I 2下列四項(xiàng)中,不屬于數(shù)據(jù)庫系統(tǒng)特點(diǎn)的是( )。 A數(shù)據(jù)共享 B數(shù)據(jù)完整性 C數(shù)據(jù)冗余度高 D數(shù)據(jù)獨(dú)立性高 1.6 思考與練習(xí)二、選擇題3數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)獨(dú)立性體現(xiàn)在( )。 A不會(huì)因?yàn)閿?shù)據(jù)的變化而影響到應(yīng)用程序 B不會(huì)因?yàn)橄到y(tǒng)數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)與數(shù)據(jù)邏輯結(jié)構(gòu)的變化而影響應(yīng)用程序 C不會(huì)因?yàn)榇鎯?chǔ)策略的變化而影響存儲(chǔ)結(jié)構(gòu) D不會(huì)因?yàn)槟承┐鎯?chǔ)結(jié)構(gòu)的變化而影響其他的存儲(chǔ)結(jié)構(gòu) 4描述

58、數(shù)據(jù)庫全體數(shù)據(jù)的全局邏輯結(jié)構(gòu)和特性的是( )。 A模式 B內(nèi)模式 C外模式 D用戶模式 1.6 思考與練習(xí)二、選擇題5要保證數(shù)據(jù)庫的邏輯數(shù)據(jù)獨(dú)立性,需要修改的是( )。 A模式與外模式的映射 B模式與內(nèi)模式之間的映射 C模式 D三級(jí)模式 6現(xiàn)有如下關(guān)系: 患者(患者編號(hào),患者姓名,性別,出生日起,所在單位) 醫(yī)療(患者編號(hào),患者姓名,醫(yī)生編號(hào),醫(yī)生姓名,診斷日期,診斷結(jié)果) 其中,醫(yī)療關(guān)系中的外碼是( )。 A患者編號(hào) B患者姓名 C患者編號(hào)和患者姓名 D醫(yī)生編號(hào)和患者編號(hào)1.6 思考與練習(xí)二、選擇題7關(guān)系模型中實(shí)現(xiàn)實(shí)體間 m:n 聯(lián)系是通過增加一個(gè)( )。 A關(guān)系實(shí)現(xiàn) B屬性實(shí)現(xiàn) C關(guān)系或一

59、個(gè)屬性實(shí)現(xiàn) D關(guān)系和一個(gè)屬性實(shí)現(xiàn) 8從一個(gè)數(shù)據(jù)庫文件中取出滿足某個(gè)條件的所有記錄形成一個(gè)新的數(shù)據(jù)庫文件的操作是( )操作。 A投影 B聯(lián)接 C選擇 D復(fù)制 9自然連接是構(gòu)成新關(guān)系的有效方法。一般情況下,當(dāng)對(duì)關(guān)系R和S是用自然連接時(shí),要求R和S含有一個(gè)或者多個(gè)共有的( )。 A記錄 B行 C屬性 D元組 1.6 思考與練習(xí)二、選擇題10假設(shè)有關(guān)系R和S,關(guān)系代數(shù)表達(dá)式R(RS)表示的是( )。 ARS BRS CRS DRS 11關(guān)系模式R中的屬性全是主屬性,則R的最高范式必定是( )。A1NF B2NF C3NF DBCNF12關(guān)系模式的候選碼可以有1個(gè)或多個(gè),而主碼有( )。A多個(gè) B0個(gè)

60、C1個(gè) D1個(gè)或多個(gè)1.6 思考與練習(xí)二、選擇題13關(guān)系數(shù)據(jù)庫規(guī)范化是為了解決關(guān)系數(shù)據(jù)庫中( )的問題而引入的。A提高查詢速度 B插入、刪除異常和數(shù)據(jù)冗余 C保證數(shù)據(jù)的安全性和完整性14關(guān)系的規(guī)范化中,各個(gè)范式之間的關(guān)系是( )。A1NF2NF3NF B3NF2NF1NF C1NF=2NF=3NF D.1NF2NFBCNF3NF1.6 思考與練習(xí)二、選擇題15數(shù)據(jù)庫設(shè)計(jì)中,用E-R圖來描述信息結(jié)構(gòu)但不涉及信息在計(jì)算機(jī)中的表示,這是數(shù)據(jù)庫設(shè)計(jì)的( )。 A需求分析階段 B邏輯設(shè)計(jì)階段 C概念設(shè)計(jì)階段 D物理設(shè)計(jì)階段 16在數(shù)據(jù)庫設(shè)計(jì)中,將E-R圖轉(zhuǎn)換成關(guān)系數(shù)據(jù)模型的過程屬于( )。 A需求分析階

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論