數(shù)據(jù)庫(kù)原理·整理.doc_第1頁(yè)
數(shù)據(jù)庫(kù)原理·整理.doc_第2頁(yè)
數(shù)據(jù)庫(kù)原理·整理.doc_第3頁(yè)
數(shù)據(jù)庫(kù)原理·整理.doc_第4頁(yè)
數(shù)據(jù)庫(kù)原理·整理.doc_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

數(shù)據(jù)庫(kù)原理復(fù)習(xí)(09-10)第一章 數(shù)據(jù)庫(kù)系統(tǒng)概述 本章屬于基礎(chǔ)知識(shí),主要是對(duì)一些概念的理解和記憶。沒(méi)有難點(diǎn),相對(duì)的重點(diǎn)在于ER模型的設(shè)計(jì)和關(guān)系模型的掌握。 一、數(shù)據(jù)管理技術(shù)的發(fā)展階段( 識(shí)記 ) 數(shù)據(jù)管理技術(shù)共經(jīng)歷了三個(gè)階段:人工管理階段、文件系統(tǒng)階段、數(shù)據(jù)庫(kù)階段。1、人工管理階段的特點(diǎn): (1)數(shù)據(jù)不保存在機(jī)器中 (2)沒(méi)有專用軟件對(duì)數(shù)據(jù)進(jìn)行管理 (3)只有程序的概念,沒(méi)有文件的概念。 2、文件系統(tǒng)階段的特點(diǎn)與缺陷:(1)數(shù)據(jù)可長(zhǎng)期保存在磁盤上。 (2)數(shù)據(jù)的邏輯結(jié)構(gòu)與物理結(jié)構(gòu)有了區(qū)別 (3)文件組織呈現(xiàn)多樣化 (4)數(shù)據(jù)不再屬于某個(gè)特定程序,可以重復(fù)使用。 其缺陷是: 數(shù)據(jù)冗余性、數(shù)據(jù)不一致性、數(shù)據(jù)聯(lián)系弱。3、數(shù)據(jù)庫(kù)階段的特點(diǎn) 采用復(fù)雜的數(shù)據(jù)模型表示數(shù)據(jù)結(jié)構(gòu) 有較高的數(shù)據(jù)獨(dú)立性(數(shù)據(jù)結(jié)構(gòu)分成用戶的邏輯結(jié)構(gòu)、整體邏輯結(jié)構(gòu)和物理結(jié)構(gòu)三級(jí)) 數(shù)據(jù)庫(kù)系統(tǒng)為用戶提供方便的用戶接口,可以使用查詢語(yǔ)言、終端命令或程序方式操作數(shù)據(jù)庫(kù)。 系統(tǒng)提供了四個(gè)方面的數(shù)據(jù)控制功能:數(shù)據(jù)庫(kù)的恢復(fù)、并發(fā)控制、數(shù)據(jù)完整性和數(shù)據(jù)安全性。 對(duì)數(shù)據(jù)的操作不一定以記錄為單位,還可以數(shù)據(jù)項(xiàng)為單位。 數(shù)據(jù)庫(kù)技術(shù)中的四個(gè)名詞:DB、DBMS、DBS、數(shù)據(jù)庫(kù)技術(shù)。其概念是不同的,要分清。 DB:數(shù)據(jù)庫(kù)(Database),DB是統(tǒng)一管理的相關(guān)數(shù)據(jù)的集合。 DBMS:數(shù)據(jù)庫(kù)管理系統(tǒng)(Database Management System),DBMS是位于用戶與操作系統(tǒng)之間的一層對(duì)數(shù)據(jù)進(jìn)行管理的系統(tǒng)軟件,為用戶或應(yīng)用程序提供訪問(wèn)DB的方法,包括DBS的建立、查詢、更新及各種數(shù)據(jù)控制。DBMS總是基于某種數(shù)據(jù)模型,可以分為層次型、網(wǎng)狀型、關(guān)系型、面向?qū)ο笮虳BMS。 DBS:數(shù)據(jù)庫(kù)系統(tǒng)(Database System),DBS是實(shí)現(xiàn)有組織地、動(dòng)態(tài)地存儲(chǔ)大量關(guān)聯(lián)數(shù)據(jù),方便多用戶訪問(wèn)的計(jì)算機(jī)軟件、硬件和數(shù)據(jù)資源組成的系統(tǒng),采用了數(shù)據(jù)庫(kù)技術(shù)的計(jì)算機(jī)系統(tǒng)。 數(shù)據(jù)庫(kù)技術(shù):是一門研究數(shù)據(jù)庫(kù)結(jié)構(gòu)、存儲(chǔ)、管理和使用的軟件學(xué)科。 二、數(shù)據(jù)描述的術(shù)語(yǔ)( 領(lǐng)會(huì) ) 1、數(shù)據(jù)描述的三個(gè)領(lǐng)域:現(xiàn)實(shí)世界、信息世界和機(jī)器世界。 信息世界中的幾個(gè)概念:實(shí)體(即客觀存在可以相互區(qū)別的事物)、實(shí)體集(同類實(shí)體的集合)、屬性(實(shí)體的特性)、實(shí)體標(biāo)識(shí)符(唯一標(biāo)識(shí)實(shí)體的屬性(集)。 機(jī)器世界中的四個(gè)概念: 字段、記錄、文件、鍵 (關(guān)鍵碼)。 2、數(shù)據(jù)描述的兩種形式: 物理描述和邏輯描述。前者是指數(shù)據(jù)在存儲(chǔ)設(shè)備上的存取方式,后者是指程序員或用戶用以操作的數(shù)據(jù)形式。 3、物理描述用到的術(shù)語(yǔ)有:位、字節(jié)、字、塊、桶、卷 4、數(shù)據(jù)聯(lián)系的描述: 1:1聯(lián)系:如果實(shí)體集A中的每個(gè)實(shí)體最多只能和實(shí)體集B中的一個(gè)實(shí)體有聯(lián)系,反之亦然,好么實(shí)體集A對(duì)B的聯(lián)系稱為“一對(duì)一聯(lián)系”,記為“1:1”。 1:N聯(lián)系:如果實(shí)體集A中每個(gè)實(shí)體與實(shí)體集B中任意個(gè)(零個(gè)或多個(gè))實(shí)體有聯(lián)系,而A中每個(gè)實(shí)體至多和B中的一個(gè)實(shí)體有聯(lián)系,那么A對(duì)B的聯(lián)系是“一對(duì)多聯(lián)系”,記為“1:N”。 M:N聯(lián)系:如果實(shí)體集A中每個(gè)實(shí)體與實(shí)體集B中任意個(gè)(零個(gè)或多個(gè))實(shí)體有聯(lián)系,反之亦然,那么A對(duì)B的聯(lián)系是“多對(duì)多聯(lián)系”,記為“M:N”。 三、數(shù)據(jù)模型 1、數(shù)據(jù)模型的概念( 領(lǐng)會(huì) ): 表示實(shí)體類型及實(shí)體類型間聯(lián)系的模型稱為“數(shù)據(jù)模型”。它可分為兩種類型:概念數(shù)據(jù)模型和 結(jié)構(gòu)數(shù)據(jù)模型 。 2、概念數(shù)據(jù)模型( 簡(jiǎn)單應(yīng)用 ): 它是獨(dú)立于計(jì)算機(jī)系統(tǒng)的模型,完全不涉及信息在系統(tǒng)中的表示,只是用來(lái)描述某個(gè)特定組織所關(guān)心的信息結(jié)構(gòu)。實(shí)體聯(lián)系模型及E-R 圖。3、結(jié)構(gòu)數(shù)據(jù)模型:它是直接面向數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu),是現(xiàn)實(shí)世界的第二層抽象。這類模型涉及到計(jì)算機(jī)系統(tǒng)和數(shù)據(jù)庫(kù)管理系統(tǒng),所以稱為“結(jié)構(gòu)數(shù)據(jù)模型”。結(jié)構(gòu)數(shù)據(jù)模型應(yīng)包含:數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作、數(shù)據(jù)完整性約束三部分。結(jié)構(gòu)數(shù)據(jù)模型主要有:層次、 網(wǎng)狀、 關(guān)系三種模型。 層次模型( 識(shí)記 ):用樹型結(jié)構(gòu)表示實(shí)體間聯(lián)系的數(shù)據(jù)模型 網(wǎng)狀模型( 識(shí)記 ):用有向圖結(jié)構(gòu)表示實(shí)體類型及實(shí)體間聯(lián)系的數(shù)據(jù)模型。 關(guān)系模型( 領(lǐng)會(huì) ):是由若干個(gè)關(guān)系模式組成的集合,其主要特征是用二維表格結(jié)構(gòu)表達(dá)實(shí)體集,用外鍵表示實(shí)體間聯(lián)系。 4、面向?qū)ο竽P?識(shí)記):通過(guò)對(duì)象和類的概念來(lái)建立的數(shù)據(jù)庫(kù)模型,是面向?qū)ο蠹夹g(shù)與數(shù)據(jù)庫(kù)技術(shù)結(jié)合的產(chǎn)物。 四、數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)( 領(lǐng)會(huì) ) 1、三級(jí)結(jié)構(gòu)模式:數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)分為三級(jí):內(nèi)部級(jí)、概念級(jí)和外部級(jí): 外部級(jí):?jiǎn)蝹€(gè)用戶所能看到的數(shù)據(jù)特性,稱外模式。 概念級(jí):涉及到所有用戶的數(shù)據(jù)定義,是全局的數(shù)據(jù)視圖,稱“概念模式”。內(nèi)部級(jí):最接近于物理存儲(chǔ),涉及到實(shí)際數(shù)據(jù)存儲(chǔ)的結(jié)構(gòu),稱“內(nèi)模式”。 2、兩級(jí)映象: 模式/內(nèi)模式映象:用于定義概念模式和內(nèi)模式之間的對(duì)應(yīng)性。一般在內(nèi)模式中描述。 外模式/模式映象:用于定義外模式和概念模式間的對(duì)應(yīng)性。一般在外模式中描述。 3. 兩級(jí)數(shù)據(jù)獨(dú)立性: 物理數(shù)據(jù)獨(dú)立性:修改內(nèi)模式時(shí)盡量不影響概念模式及外模式,則達(dá)到物理數(shù)據(jù)獨(dú)立性。 邏輯數(shù)據(jù)獨(dú)立性:修改概念模式時(shí)盡量不影響外模式和應(yīng)用程序。 4. 數(shù)據(jù)庫(kù)模式可以理解為數(shù)據(jù)庫(kù)結(jié)構(gòu)。 五、數(shù)據(jù)庫(kù)管理系統(tǒng)( DBMS 領(lǐng)會(huì) ) 1、DBMS的主要功能: (1)數(shù)據(jù)庫(kù)的定義功能 (2)數(shù)據(jù)庫(kù)的操縱功能 (3)數(shù)據(jù)庫(kù)的保護(hù)功能 (4)數(shù)據(jù)庫(kù)的存儲(chǔ)管理 (5)數(shù)據(jù)庫(kù)的維護(hù)功能 (6)數(shù)據(jù)字典 2、DBMS的組成: 由兩大部分組成:查詢處理器和存儲(chǔ)管理器,前者包括DDL編譯器、DML編譯器、嵌入型DML預(yù)編譯器、查詢運(yùn)行核心程序。后者包括授權(quán)和完整性管理器,事務(wù)管理器、文件管理器,緩沖區(qū)管理器。 六、數(shù)據(jù)庫(kù)系統(tǒng)(DBS 領(lǐng)會(huì) ) DBS由四部分組成:數(shù)據(jù)庫(kù)(DB)、硬件、軟件(DBMS)、用戶。 DBS的全局結(jié)構(gòu)及DBS的效益,了解一下。 第二章 關(guān)系模型 本章為次重點(diǎn)章,我們經(jīng)常使用的數(shù)據(jù)庫(kù)均采用關(guān)系模型,本章主要介紹了關(guān)系模型的關(guān)系運(yùn)算理論,主要在于對(duì)關(guān)系演算運(yùn)算的理解,為后面章節(jié)的SQL作準(zhǔn)備。 一、關(guān)系模型的基本概念( 識(shí)記 ) 1、關(guān)系模型的基本術(shù)語(yǔ): 關(guān)系模型:用二維表格結(jié)構(gòu)表示實(shí)體集、外鍵表示實(shí)體間聯(lián)系的數(shù)據(jù)模型稱。 基本術(shù)語(yǔ)有: 字段(屬性)、字段值(屬性值)、記錄(元組)、二維表格(元組集合、關(guān)系或?qū)嵗?。 在這里,括號(hào)中的表述為關(guān)系模型中的術(shù)語(yǔ)。它與表格中術(shù)語(yǔ)可以一一對(duì)應(yīng)。還有,關(guān)系中屬性個(gè)數(shù)稱為元數(shù),元組個(gè)數(shù)為基數(shù)。 鍵:由一個(gè)或幾個(gè)屬性組成。(注意鍵不一定是唯一的一個(gè)屬性)。 超鍵:在關(guān)系中能唯一標(biāo)識(shí)元組的屬性集稱為關(guān)系模式的超鍵。(注意,超鍵也是一個(gè)屬性集,不一定只是一個(gè)屬性) 候選鍵:不含有多余屬性的超鍵稱為候選鍵。 主鍵:用戶選作元組標(biāo)識(shí)的一個(gè)候選鍵為主鍵。 外鍵:某個(gè)關(guān)系的主鍵相應(yīng)的屬性在另一關(guān)系中出現(xiàn),此時(shí)該主鍵在就是另一關(guān)系的外鍵。 2、關(guān)系模式、關(guān)系子模式和存儲(chǔ)模式 關(guān)系模式:關(guān)系模式實(shí)際上就是記錄類型。它包括:模式名,屬性名,值域名以及模式的主鍵。關(guān)系模式僅是對(duì)數(shù)據(jù)特性的描述。 (這通常在數(shù)據(jù)庫(kù)中表現(xiàn)為一個(gè)數(shù)據(jù)表的結(jié)構(gòu)) 關(guān)系子模式:就是用戶所用到那部分?jǐn)?shù)據(jù)的描述。 存儲(chǔ)模式:關(guān)系存儲(chǔ)時(shí)的基本組織方式是文件,元組是文件中的記錄。 3、關(guān)系模型的三類完整性規(guī)則 實(shí)體完整性規(guī)則:要求關(guān)系中組成主鍵的屬性上不能有空值。 參照完整性規(guī)則:要求不引用不存在的實(shí)體。 用戶定義完整性規(guī)則:由具體應(yīng)用環(huán)境決定,系統(tǒng)提供定義和檢驗(yàn)這類完整性的機(jī)制。 4、關(guān)系模型的形式定義:數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完整性規(guī)則。 二、關(guān)系代數(shù)運(yùn)算(簡(jiǎn)單應(yīng)用) 1、關(guān)系代數(shù)的五個(gè)基本操作:并、差、笛卡爾積、投影和選擇。 并 ():兩個(gè)關(guān)系需有相同的關(guān)系模式,并的對(duì)象是元組,由兩個(gè)關(guān)系所有元組構(gòu)成。 差 (-):同樣,兩個(gè)關(guān)系有相同的模式,R和S的差是由屬于R但不屬于S的元組構(gòu)成的集合。 投影():對(duì)關(guān)系進(jìn)行垂直分割,消去某些列,并重新安排列的順序。 選擇 ():根據(jù)某些條件關(guān)系作水平分割,即選擇符合條件的元組。 2、關(guān)系代數(shù)的四個(gè)組合操作:交、聯(lián)接、自然聯(lián)接和除法 交 ():R和S的交是由既屬于R又屬于S的元組構(gòu)成的集合??捎肦-(R-S) 來(lái)表示。聯(lián)接:包括聯(lián)接和F聯(lián)接,是選擇RS中滿足i(r+j)或F條件的元組構(gòu)成的集合,特別注意等值聯(lián)接 (為等號(hào)“=”)。 自然聯(lián)接: (R|X|S):在RS中,選擇R和S公共屬性值均相等的元組,并去掉RS中重復(fù)的公共屬性列。如果兩個(gè)關(guān)系沒(méi)有公共屬性,則自然聯(lián)接就轉(zhuǎn)化為笛卡爾積。 除法 ():首先除法的結(jié)果中元數(shù)為兩個(gè)元數(shù)的差。 對(duì)于上述的五個(gè)基本操作和組合操作,應(yīng)當(dāng)從實(shí)際運(yùn)算方面進(jìn)行理解和運(yùn)用,對(duì)其形式定義可不必深究。 3、關(guān)系代數(shù)表達(dá)式及應(yīng)用 在關(guān)系代數(shù)表達(dá)式中,復(fù)合了上述五個(gè)基本操作,在給出相應(yīng)的表格(關(guān)系)中,應(yīng)該能夠根據(jù)給出的關(guān)系代數(shù)表達(dá)式計(jì)算關(guān)系值,也要能根據(jù)相應(yīng)查詢要求列出關(guān)系表達(dá)式。 在列關(guān)系表達(dá)式時(shí),通常有以下形式: .(.(RS)或者.(.(R|X|S) 首先把查詢涉及到的關(guān)系取來(lái),執(zhí)行笛卡爾積或自然聯(lián)接操作得到一張大的表格,然后對(duì)大表格執(zhí)行水平分割(選擇)和垂直分割(投影)操作。但是注意當(dāng)查詢涉及到否定或全部值時(shí),就不能用上述形式,而要用到差或除法操作。 第三章 關(guān)系數(shù)據(jù)庫(kù)SQL語(yǔ)言 本章為重點(diǎn)章,應(yīng)熟悉和掌握SQL的數(shù)據(jù)定義、數(shù)據(jù)查詢、數(shù)據(jù)更新的句法及其應(yīng)用,特別是數(shù)據(jù)查詢的應(yīng)用。結(jié)合上機(jī)操作進(jìn)行理解和掌握。 一、SQL概述。 1、SQL發(fā)展歷程( 識(shí)記 ) SQL從1970年美國(guó)IBM研究中心的E.F.Codd發(fā)表論文到1974年Boyce和Chamberlin把SQUARE語(yǔ)言改為SEQUEL語(yǔ)言,到現(xiàn)在還在不斷完善和發(fā)展之中,SQL(結(jié)構(gòu)式查詢語(yǔ)言)雖然名為查詢,但實(shí)際上具有定義、查詢、更新和控制等多種功能。 2、SQL數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)( 領(lǐng)會(huì) ) SQL數(shù)據(jù)庫(kù)的體系結(jié)構(gòu)也是三級(jí)結(jié)構(gòu) ,但術(shù)語(yǔ)與傳統(tǒng)關(guān)系模型術(shù)語(yǔ)不同,在SQL中,關(guān)系模式稱為“基本表”,存儲(chǔ)模式稱為“存儲(chǔ)文件”,子模式稱為“視圖”,元組稱“行”,屬性稱為“列”。 SQL數(shù)據(jù)庫(kù)體系的結(jié)構(gòu)要點(diǎn)如下: (1) 一個(gè)SQL數(shù)據(jù)庫(kù)是表的匯集。 (2) 一個(gè)SQL表由行集構(gòu)成,行是列的序列,每列對(duì)應(yīng)一個(gè)數(shù)據(jù)項(xiàng)。 (3) 表或者是基本表,或者是視圖?;颈硎菍?shí)際存儲(chǔ)在數(shù)據(jù)庫(kù)中的表,視圖由是由若干基本表或其他視圖構(gòu)成的表的定義。 (4) 一個(gè)基本表可以跨一個(gè)或多個(gè)存儲(chǔ)文件,一個(gè)存儲(chǔ)文件也可存放一個(gè)或多個(gè)基本表。存儲(chǔ)文件與物理文件對(duì)應(yīng)。 (5) 用戶可以用SQL語(yǔ)句對(duì)表進(jìn)行操作,包括視圖和基本表。 (6) SQL的用戶可以是應(yīng)用程序,也可以是終端用戶。 3、SQL的組成( 識(shí)記 ) 四部分組成: (1)數(shù)據(jù)定義:SQL DDL。定義SQL模式,基本表、視圖和索引。 (2)數(shù)據(jù)操縱:SQL DML。包括數(shù)據(jù)查詢和數(shù)據(jù)更新(增、刪、改)。 (3)數(shù)據(jù)控制:包括對(duì)基本表和視圖的授權(quán)、完整性規(guī)則的描述,事務(wù)控制等。 (4)嵌入式SQL的使用規(guī)定。 二、SQL的數(shù)據(jù)定義( 簡(jiǎn)單應(yīng)用 ) 1、SQL模式的創(chuàng)建和撤消: SQL 模式的創(chuàng)建 可簡(jiǎn)單理解為建立一個(gè)數(shù)據(jù)庫(kù),定義一個(gè)存儲(chǔ)空間,其句法是: CREAT SCHEMA AUTHORIZATION 撤消SQL模式的句法為: DROP SCHEMA CASCADE | RESTRICT 方括號(hào)中的選項(xiàng)參數(shù)CASCADE表示連鎖方式,執(zhí)行時(shí)將模式下所有基本表、視圖、索引等元素全部撤消。RESTRICT表示約束式,執(zhí)行時(shí)必須在SQL模式中沒(méi)有任何下屬元素時(shí)方可撤消模式。 2、SQL提供的基本數(shù)據(jù)類型 數(shù)值型:包括 integer、smallint、real、double precision 、float(n),numeric(p,d)字符串型:char(n)、varchar(n),前者是定長(zhǎng),后者為變長(zhǎng)串 位串型:bit(n),bit varying(n),同上。 時(shí)間型:date、time。 3、基本表的創(chuàng)建、修改和撤消 基本表的創(chuàng)建:(可理解為建立表結(jié)構(gòu)) CREAT TABLE SQL模式名.基本表名 ( 列名,類型, 完整性約束.) 完整性約束包括主鍵子句(PRIMARY KEY)、檢查子句(CHECK)和外鍵子句(Foreign KEY). 基本表結(jié)構(gòu)的修改 ALTER TABLE 基本表名 ADD/ DROP (增加/刪除) 列名 類型名(增加時(shí)寫出) 基本表的撤消 DROP TABLE 基本表名 CASCADE|RESTRICT 4、視圖的創(chuàng)建和撤消 視圖創(chuàng)建: CREAT VIEW 視圖名(列名表) AS SELECT 查詢語(yǔ)句 視圖撤消: DROP VIEW 視圖名 5、索引的創(chuàng)建和撤消 索引創(chuàng)建: CREAT UNIQUE INDEX 索引名 ON 基本表名(列名表 ASC|DESC) 索引撤消: DROP INDEX 索引名 總結(jié):凡創(chuàng)建都用 CREAT ,刪除都用 DROP ,改變用 alter ,再跟類型和名字,附加子句。 三、SQL的數(shù)據(jù)查詢( 綜合應(yīng)用 ) 這一段是本章的重點(diǎn)內(nèi)容,應(yīng)該熟練掌握。首先了解基本句法: 1、SELECT FROM - WHERE 句型 SELECT 列名表(逗號(hào)隔開(kāi)) FROM 基本表或視圖序列 WHERE 條件表達(dá)式 在這里,重點(diǎn)要掌握條件表達(dá)式中各種運(yùn)算符的應(yīng)用,如=,,等算術(shù)比較運(yùn)算符、邏輯運(yùn)算符 AND、OR、NOT,集合成員資格運(yùn)算符: IN,NOT IN ,以及嵌套的 SELECT 語(yǔ)句的用法要特別注意理解。 針對(duì)課本的例題和課后習(xí)題進(jìn)行掌握。 在查詢時(shí), SELECT 語(yǔ)句可以有多種寫法,如 聯(lián)接查詢、嵌套查詢和使用存在量詞的嵌套查詢等。最好都掌握,但是起碼應(yīng)能寫出一種正確的查詢語(yǔ)句。 2. SELECT 語(yǔ)句完整的句法: SELECT 列名表(逗號(hào)隔開(kāi)) FROM 基本表或視圖序列 WHERE 條件表達(dá)式 (此為和條件子句) GROUP BY 列名序列 (分組子句) HAVING 組條件表達(dá)式 (組條件子句) ORDER BY列名ASC|DESC. (排序子句) 這段關(guān)于完整句法的內(nèi)容能夠理解也就問(wèn)題不大了。 3、SELECT 語(yǔ)句中的限定 主要是對(duì) SELECT 語(yǔ)句進(jìn)一步使用進(jìn)行的深入學(xué)習(xí),領(lǐng)會(huì)下列各種限定的使用目的和方法。 要求輸出表格中不出現(xiàn)重復(fù)元組,則在 SELECT 后加一DISTINCT SELECT 子句中允許出現(xiàn)加減乘除及列名,常數(shù)的算術(shù)表達(dá)式 WHERE 子句中可以用BETWEEN.AND.來(lái)限定一個(gè)值的范圍 同一個(gè)基本表在 SELECT 語(yǔ)句中多次引用時(shí)可用AS來(lái)增加別名 WHERE 子句中字符串匹配用LIKE和兩個(gè)通配符:% 和下劃線 _。 查詢結(jié)果的結(jié)構(gòu)完全一致時(shí)可將兩個(gè)查詢進(jìn)行并(UNION)交(INTERSECT)差(EXCPT)操作 查詢空值操作不是用=null,而是用 IS NULL來(lái)測(cè)試。 集合成員資格比較用 IN/NOT IN ,集合成員算術(shù)比較用元組SOME/ALL 可以用子查詢結(jié)果取名(表名(列名序列)來(lái)作為導(dǎo)出表使用 基本表的自然聯(lián)接操作是用 NATURAL INNER JOIN來(lái)實(shí)現(xiàn)的。 四、SQL的數(shù)據(jù)更新( 簡(jiǎn)單應(yīng)用 ) 簡(jiǎn)單應(yīng)用就是掌握基本的句型并能套用在一些簡(jiǎn)單的查詢要求上。 1、數(shù)據(jù)插入: INSERT INTO 基本表名(列名表) VALUES (元組值) 或 INSERT INTO 基本表名(列名表) SELECT 查詢語(yǔ)句 其中元組值可以連續(xù)插入。用查詢語(yǔ)句可以按要求插入所需數(shù)據(jù)。 2、數(shù)據(jù)刪除: DELETE FROM 基本表名 WHERE 條件表達(dá)式 3、數(shù)據(jù)修改: UPDATE 基本表名 SET 列名=值表達(dá)式,列名=值表達(dá)式. WHERE 條件表達(dá)式 4、視圖的更新: 對(duì)視圖的查詢是和基本表相同的,但是更新操作則受到下列三條規(guī)則的限制:(領(lǐng)會(huì)一下) 如果視圖是從多個(gè)基本表使用聯(lián)接操作導(dǎo)出的,則不允許更新。 如果導(dǎo)出的視圖使用了分組和聚合操作,也不允許更新。 如果視圖是從單個(gè)基本表使用選擇和投影操作導(dǎo)出的,并且包括了基本表的主鍵或某個(gè)候選鍵,則可以執(zhí)行操作。(這就相當(dāng)于在基本表上操作)。 關(guān)于增刪改的操作要和前面關(guān)于數(shù)據(jù)庫(kù)模式、表的增刪改操作進(jìn)行對(duì)比學(xué)習(xí),以加深理解。第四章 關(guān)系數(shù)據(jù)庫(kù)理論 本章的理論性較強(qiáng),學(xué)習(xí)時(shí)有無(wú)從下手的感覺(jué),在學(xué)習(xí)時(shí)應(yīng)多加思考,從概念出發(fā)去理解理論,前后的理論有較強(qiáng)的聯(lián)系,因此要逐個(gè)理解,但對(duì)于理論的證明等內(nèi)容則不必深究,本章重點(diǎn)是函數(shù)依賴,無(wú)損聯(lián)接、保持依賴和范式的概念。 一、關(guān)系模式的設(shè)計(jì)問(wèn)題( 識(shí)記 ) 關(guān)系數(shù)據(jù)庫(kù)是以關(guān)系模型為基礎(chǔ)的數(shù)據(jù)庫(kù),它利用關(guān)系來(lái)描述現(xiàn)實(shí)世界。一個(gè)關(guān)系既可以用來(lái)描述一個(gè)實(shí)體及其屬性,也可以用來(lái)描述實(shí)體間的聯(lián)系。關(guān)系實(shí)質(zhì)上就是一張二維表,表的行稱為元組,列稱為屬性。 關(guān)系模式是用來(lái)定義關(guān)系的,我們可以把關(guān)系模式簡(jiǎn)單地理解為一個(gè)表的結(jié)構(gòu),一個(gè)關(guān)系數(shù)據(jù)庫(kù)包含一組關(guān)系,也就是包含一組二維表,這些二維表結(jié)構(gòu)體的集合就構(gòu)成數(shù)據(jù)庫(kù)的模式(也可以理解為數(shù)據(jù)庫(kù)的結(jié)構(gòu))。 關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)理論包括三個(gè)內(nèi)容:數(shù)據(jù)依賴、范式、模式設(shè)計(jì)方法。核心內(nèi)容是數(shù)據(jù)依賴。 泛關(guān)系模式:把現(xiàn)實(shí)問(wèn)題的所有屬性組成一個(gè)關(guān)系模R(U),這個(gè)關(guān)系模式就稱為泛關(guān)系模式。 數(shù)據(jù)庫(kù)模式:把泛關(guān)系模式用一組關(guān)系模式的集合來(lái)表示時(shí),這個(gè)就是數(shù)據(jù)庫(kù)模式。 下面我們總結(jié)一下關(guān)系模式的相關(guān)內(nèi)容從大到小的排列 泛關(guān)系模式數(shù)據(jù)庫(kù)模式關(guān)系數(shù)據(jù)庫(kù)表結(jié)構(gòu)關(guān)系模式實(shí)例(表)記錄(行、列.) 關(guān)系模式的存儲(chǔ)異常: 數(shù)據(jù)冗余、更新異常、 插入異常和刪除異常 二、函數(shù)依賴(FD) 1、函數(shù)依賴的定義(領(lǐng)會(huì)):設(shè)R(U)是屬性集U上的關(guān)系模式。X,Y是U的子集,r是R的任一可能的關(guān)系,r中不可能存在兩個(gè)元組在X上的屬性值相等,而在Y上的屬性值不相等,則稱X函數(shù)決定Y,或Y函數(shù)依賴于X,記為XY。XY為模式R的一個(gè)函數(shù)依賴。 (1) 平凡函數(shù)依賴和非平凡函數(shù)依賴(2) 函數(shù)依賴是語(yǔ)義范疇(3) 函數(shù)依賴與屬性之間的聯(lián)系類型有關(guān):X與Y是1:1的聯(lián)系,XY X與Y是m:1的聯(lián)系,X-Y X與Y是m:n的聯(lián)系,X與Y之間無(wú)函數(shù)名依賴關(guān)系(4) 函數(shù)依賴關(guān)系的存在與時(shí)間無(wú)關(guān)。(5) 函數(shù)依賴可以保證關(guān)系分解的無(wú)損連接性。2、函數(shù)依賴的邏輯蘊(yùn)涵 ( 識(shí)記 ) 設(shè) F 是關(guān)系模式 R 的一個(gè)函數(shù)依賴集,X,Y是R的屬性子集,如果從F中的函數(shù)依賴能夠推出 XY,則稱 F 邏輯蘊(yùn)涵 XY,記為 F|=XY. 而函數(shù)依賴的閉包F+ 是指被F邏輯蘊(yùn)涵的函數(shù)依賴的全體構(gòu)成的集合。 3、鍵和FD的關(guān)系 ( 領(lǐng)會(huì) ) 鍵是唯一標(biāo)識(shí)實(shí)體的屬性集。對(duì)于鍵和函數(shù)依賴的關(guān)系有兩個(gè)條件:設(shè)關(guān)系模式R(A1,A2.An),F(xiàn)是R上的函數(shù)依賴集,X是R的一個(gè)子集, (1)XA1A2.AnF + (它的意思是X能夠決定唯一的一個(gè)元組) (2)不存在X的真子集Y,使得Y也能決定唯一的一個(gè)元組,則X就是R的一個(gè)候選鍵。(它的意思是X能決定唯一的一個(gè)元組但又沒(méi)有多余的屬性集) 包含在任何一個(gè)候選鍵中的屬性稱為主屬性 ,不包含在任何鍵中的屬性為非主屬性(非鍵屬性),注意主屬性應(yīng)當(dāng)包含在候選鍵中。 4、函數(shù)依賴(FD)的基本性質(zhì)( 簡(jiǎn)單應(yīng)用 ) (1) 投影性:一組屬性函數(shù)決定它的所有子集。(2) 擴(kuò)張性:若XY且WZ, 則(X, W)(Y, Z)(3) 合并性:若XY且XZ, 則必有X(Y, Z)(4) 分解性:若X(Y, Z), 則XY且XZ5、函數(shù)依賴的等價(jià)和覆蓋 ( 識(shí)記) 在關(guān)系模式R(U)上的兩個(gè)函數(shù)依賴集F和G,如果滿足F+ = G+,則稱F和G是等價(jià)的,稱F和G等價(jià)也稱F 覆蓋 G或G覆蓋F。 每個(gè)函數(shù)依賴集F都可以被一個(gè)右部只有單屬性的函數(shù)依賴集 G所覆蓋。 如果函數(shù)依賴集合F滿足: (1)F中每一個(gè)函數(shù)依賴的右部都是單屬性; (2)F中的任一函數(shù)依賴XA,其F-XA是不等價(jià)的; (3)F中的任一函數(shù)依賴XA,Z為X的子集。(F-XA)ZA與F不等價(jià)。 則稱F為最小函數(shù)依賴集合。 三、關(guān)系模式的分解特性 1、 模式分解中存在的問(wèn)題:( 識(shí)記 ) 模式分解 就是將一個(gè)泛關(guān)系模式 R分解成 數(shù)據(jù)庫(kù)模式 ,以代替R的過(guò)程。它不僅僅是屬性集合的分解,它是對(duì)關(guān)系模式上的函數(shù)依賴集、以及關(guān)系模式的當(dāng)前值分解的具體表現(xiàn)。 分解一個(gè)模式有很多方法,但是有的分解會(huì)出現(xiàn)失去函數(shù)依賴、或出現(xiàn)插入、刪除異常等情況,而有的分解則不出現(xiàn)相關(guān)問(wèn)題。 衡量一個(gè)分解的標(biāo)準(zhǔn)有三種:分解具有無(wú)損聯(lián)接;分解要保持函數(shù)依賴;分解既要保持依賴,又要具有無(wú)損聯(lián)接 。 2、 無(wú)損聯(lián)接的定義和性質(zhì) ( 識(shí)記 ) 設(shè)R是一關(guān)系模式,分解成=R1,R2,.,Rk,F(xiàn)是R上的一個(gè)函數(shù)依賴集。無(wú)損聯(lián)接就是指R中每一個(gè)滿足F的關(guān)系r(也就是一個(gè)關(guān)系實(shí)例)都有r= R1 (r)|X| R2 (r).|X| R3 (r),即r為它在Ri上的投影的自然聯(lián)接。 最簡(jiǎn)單的理解,也就是說(shuō),分解后的關(guān)系自然連接后完全等于分解前的關(guān)系,則這個(gè)分解相對(duì)于F是無(wú)損聯(lián)接分解。 設(shè)R的分解為=R1,R2,F為R所滿足的函數(shù)依賴集,則分解具有無(wú)損聯(lián)接性的充分必要條件是: R1R2(R1-R2) R1R2(R2-R1) 也就是說(shuō),分解后的兩個(gè)模式的交能決定這兩個(gè)模式的差集,即R1、R2的公共屬性能夠函數(shù)決定R1或R2中的其他屬性,這樣的分解就必定是無(wú)損聯(lián)接分解 。 3、 保持函數(shù)依賴的分解 ( 識(shí)記 ) 在分解過(guò)程中,要求模式分解的無(wú)損聯(lián)接是必要的,只有無(wú)損聯(lián)接分解才能保證任何一個(gè)關(guān)系能由它的那些投影進(jìn)行自然聯(lián)接得到恢復(fù)。 同時(shí),分解關(guān)系模式時(shí)還應(yīng)保證關(guān)系模式的函數(shù)依賴集在分解后仍在數(shù)據(jù)庫(kù)模式中保持不變,這就是保持函數(shù)依賴的問(wèn)題。也就是所有分解出的模式所滿足的函數(shù)依賴的全體應(yīng)當(dāng)?shù)葍r(jià)于原模式的函數(shù)依賴集。只有這樣才能確保整個(gè)數(shù)據(jù)庫(kù)中數(shù)據(jù)的語(yǔ)義完整性不受破壞。 四、關(guān)系模式的范式( 領(lǐng)會(huì) ) 1、1NF、2NF、3NF、BCNF的定義: 1NF:第一范式 。 即關(guān)系模式中的屬性的 值域 中 每一個(gè)值都是不可再分解 的值。如果某個(gè)數(shù)據(jù)庫(kù)模式都是第一范式的,則稱該數(shù)據(jù)庫(kù)模式是屬于第一范式的數(shù)據(jù)庫(kù)模式。 2NF:第二范式 。 如果關(guān)系模式R為第一范式,并且R中每一個(gè)非主屬性完全函數(shù)依賴于 R的某個(gè)候選鍵,則稱為第二范式模式。 在這里要先了解“非主屬性”、“完全函數(shù)依賴”、“候選鍵”這三個(gè)名詞的含義。 候選鍵就是指可以唯一決定關(guān)系模式R中某元組值且不含有多余屬性的屬性集。 非主屬性也就是非鍵屬性,指關(guān)系模式R中不包含在任何建中的屬性。 設(shè)有函數(shù)依賴WA,若存在X W,有XA成立,那么稱WA是局部依賴,否則就稱WA是完全函數(shù)依賴 。 3NF:第三范式 。 如果關(guān)系模式R是第二范式,且每個(gè)非主屬性都不傳遞依賴于R的候選鍵,則稱R為第三范式的模式。 這里首先要了解傳遞依賴的含義:在關(guān)系模式中,如果YX,XA,且X不決定Y和A不屬于X,那么YA是傳遞依賴。注意的是,這里要求非主屬性都不傳遞依賴于候選鍵。 BCNF:若關(guān)系模式R是第二范式,且每個(gè)屬性都不傳遞依賴于R的候選鍵。這種關(guān)系模式就是BCNF模式。 縱觀四種范式,可以發(fā)現(xiàn)它們之間存在如下關(guān)系: 1NF 消去非主屬性對(duì)鍵的部分函數(shù)依賴2NF 消去非主屬性對(duì)鍵的傳遞函數(shù)依賴3NF 消去主屬性對(duì)鍵的傳遞函數(shù)依賴BCNF第六章 數(shù)據(jù)庫(kù)設(shè)計(jì) 本章的實(shí)用性較強(qiáng),詳細(xì)講述了數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)設(shè)計(jì)的全過(guò)程。重點(diǎn)是概念設(shè)計(jì)中ER模型的設(shè)計(jì)方法,邏輯設(shè)計(jì)中ER模型向關(guān)系模型的轉(zhuǎn)換方法。 一、數(shù)據(jù)庫(kù)設(shè)計(jì)概述( 識(shí)記 ) 1、軟件生存期:是指從軟件的規(guī)劃、研制、實(shí)現(xiàn)、投入運(yùn)行后的維護(hù)、直到它被新的軟件所取代而停止使用的整個(gè)期間。它包括六個(gè)階段:( 規(guī)需設(shè)編試運(yùn)維 ) (1)規(guī)劃階段 (2)需求分析階段 (3)設(shè)計(jì)階段 (4)程序編制階段 (5)調(diào)試階段 (6)運(yùn)行維護(hù)階段 2、數(shù)據(jù)庫(kù)系統(tǒng)生存期 數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開(kāi)發(fā)也是一項(xiàng)軟件工程,稱為數(shù)據(jù)庫(kù)工程,數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)也有生存期的概念,通常包括七個(gè)階段: (1)規(guī)劃階段 (2)需求分析階段 (3)概念設(shè)計(jì)階段 (4)邏輯設(shè)計(jì)階段 (5)物理設(shè)計(jì)階段 (6)實(shí)現(xiàn)階段 (7)運(yùn)行維護(hù)階段 3、數(shù)據(jù)庫(kù)設(shè)計(jì)方法學(xué) 一個(gè)好的數(shù)據(jù)庫(kù)設(shè)計(jì)方法應(yīng)該能在合理的期限內(nèi),以合理的工作量產(chǎn)生一個(gè)有實(shí)用價(jià)值的數(shù)據(jù)庫(kù)結(jié)構(gòu)。 數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng)的設(shè)計(jì)分為以下幾個(gè)階段:規(guī)劃、需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)。 二、規(guī)劃( 識(shí)記 ) 數(shù)據(jù)設(shè)計(jì)中的規(guī)劃階段的主要任務(wù)是進(jìn)行建立數(shù)據(jù)庫(kù)的必要性及可性性分析,確定數(shù)據(jù)庫(kù)系統(tǒng)在組織中和組織中和信息系統(tǒng)中的地位,以及各個(gè)數(shù)據(jù)庫(kù)之間的聯(lián)系。 三、需求分析( 識(shí)記 ) 需求分析階段應(yīng)對(duì)系統(tǒng)的整個(gè)應(yīng)用情況作全面的、詳細(xì)的調(diào)查、確定用戶的目標(biāo),收集

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論