數(shù)據(jù)庫期末復(fù)習(xí)資料_第1頁
數(shù)據(jù)庫期末復(fù)習(xí)資料_第2頁
數(shù)據(jù)庫期末復(fù)習(xí)資料_第3頁
數(shù)據(jù)庫期末復(fù)習(xí)資料_第4頁
數(shù)據(jù)庫期末復(fù)習(xí)資料_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第一章

緒論1、數(shù)據(jù)(Data):數(shù)據(jù)是數(shù)據(jù)庫中存儲的基本對象;數(shù)據(jù)的定義:描述事物的符號記錄;數(shù)據(jù)的種類:文本、圖形、圖像、音頻、視頻、學(xué)生的檔案記錄、貨物的運輸情況等;數(shù)據(jù)的含義稱為數(shù)據(jù)的語義,數(shù)據(jù)與其語義是不可分的。2、數(shù)據(jù)庫(Database,簡稱DB):定義:數(shù)據(jù)庫是長期儲存在計算機內(nèi)、有組織的、可共享的大量數(shù)據(jù)的集合。數(shù)據(jù)庫的基本特征:1)

數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存;2)

可為各種用戶共享、易擴展、冗余度較??;3)

數(shù)據(jù)獨立性較高。數(shù)據(jù)庫具有永久存儲、有組織和可共享三個基本特點。3、數(shù)據(jù)庫管理系統(tǒng)(DBMS):

數(shù)據(jù)庫管理系統(tǒng)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。

主要功能:1)

數(shù)據(jù)定義功能;2)

數(shù)據(jù)組織、存儲和管理;3)

數(shù)據(jù)操縱功能;4)

數(shù)據(jù)庫的事務(wù)管理和運行管理;5)

數(shù)據(jù)庫的建立和維護功能;6)

其他功能。4、數(shù)據(jù)庫系統(tǒng)(DBS):

定義:數(shù)據(jù)庫系統(tǒng)是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng),一般由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員系統(tǒng)構(gòu)成。5、數(shù)據(jù)庫技術(shù)的產(chǎn)生和發(fā)展:

三個階段:人工管理階段、文件系統(tǒng)、數(shù)據(jù)庫系統(tǒng)。6、數(shù)據(jù)庫系統(tǒng)的特點:1)

數(shù)據(jù)結(jié)構(gòu)化:不僅數(shù)據(jù)內(nèi)部結(jié)構(gòu)化,整體也是結(jié)構(gòu)化的;2)

數(shù)據(jù)的共享性高,冗余度低,易擴充;3)

數(shù)據(jù)獨立性高(物理邏輯性和邏輯獨立性);物理獨立性:指用戶的應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是相互獨立的。當數(shù)據(jù)的物理存儲改變了,應(yīng)用程序不用改變。邏輯獨立性:指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨立的。數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不變。數(shù)據(jù)獨立性是由DBMS的二級映像功能來保證的4)

數(shù)據(jù)由DBMS統(tǒng)一管理和控制。7、數(shù)據(jù)模型:

(1)數(shù)據(jù)模型是數(shù)據(jù)庫系統(tǒng)的核心和基礎(chǔ);

(2)兩類數(shù)據(jù)模型:

第一類是概念模型,第二類是邏輯模型和物理模型;

(3)數(shù)據(jù)模型的組成要素:數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完整性約束;

(4)概念模型的基本概念:1)

實體(Entity):客觀存在并可相互區(qū)別的事物稱為實體。可以是具體的人、事、物或抽象的概念;2)

屬性(Attribute):實體所具有的某一特性稱為屬性。一個實體可以由若干個屬性來刻畫;3)

碼(Key):唯一標識實體的屬性集稱為碼;4)

域(Domain):屬性的取值范圍稱為該屬性的域。5)

實體型(EntityType):用實體名及其屬性名集合來抽象和刻畫同類實體稱為實體型;6)

實體集(EntitySet):同一類型實體的集合稱為實體集;7)

聯(lián)系(Relationship):實體內(nèi)部的聯(lián)系通常是指組成實體的各屬性之間的聯(lián)系,實體之間的聯(lián)系通常是指不同實體集之間的聯(lián)系;

(5)三大經(jīng)典模型:層次模型、網(wǎng)狀模型、關(guān)系模型。8、數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu):

(1)模式是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。

(2)三級模式:內(nèi)模式、模式、外模式。

模式:是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的藐視,是所有用戶的公共視圖;一個數(shù)據(jù)庫只有一個模式;外模式:是數(shù)據(jù)庫用戶能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示;一個數(shù)據(jù)庫可以有多個外模式;

內(nèi)模式:是數(shù)據(jù)物理結(jié)構(gòu)和存儲方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式;一個數(shù)據(jù)庫只有一個內(nèi)模式。

(3)二級映像:外模式/模式,模式/內(nèi)模式;

保證了數(shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)能夠有較高的邏輯獨立性和物理獨立性。

第二章

關(guān)系數(shù)據(jù)庫1、關(guān)系(1)碼

候選碼(Candidatekey):若關(guān)系中的某一屬性組的值能唯一地標識一個元組,則稱該屬性組為候選碼;主碼(Primarykey):若有多個候選碼,則選定其中一個為主碼;全碼(All-key):最極端的情況:關(guān)系模式的所有屬性組是這個關(guān)系模式的候選碼,稱為全碼;主屬性(Primeattribute):候選碼的諸屬性稱為主屬性;非主屬性(Non-Primeattribute):而不包含在任何侯選碼中的屬性稱為非主屬性或非碼屬性。

(2)關(guān)系的三種類型:基本關(guān)系、查詢表、視圖表;

(3)基本關(guān)系的性質(zhì):1)

列是同質(zhì)的(Homogeneous)2)

不同的列可出自同一個域a)

其中的每一列稱為一個屬性b)

不同的屬性要給予不同的屬性名3)

列的順序無所謂,,列的次序可以任意交換4)

任意兩個元組的候選碼不能相同5)

行的順序無所謂,行的次序可以任意交換6)

分量必須取原子值(最基本的一條)(4)關(guān)系模型要求關(guān)系必須是規(guī)范化的,即要求關(guān)系必須滿足一定的規(guī)范條件;最基本的一條就是:關(guān)系的每一個分量必須是一個不可分的數(shù)據(jù)項。(5)關(guān)系數(shù)據(jù)庫中,關(guān)系模型是型,關(guān)系是值;關(guān)系模式是對關(guān)系的描述。2、關(guān)系操作

(1)基本關(guān)系操作:

常用的關(guān)系操作包括查詢操作和插入、刪除、修改操作兩大部分;查詢:選擇、投影、連接、除、并、交、差;數(shù)據(jù)更新:插入、刪除、修改;查詢的表達能力是其中最主要的部分;選擇、投影、并、差、笛卡爾基是5種基本操作。(2)關(guān)系操作的特點:集合操作方式,即操作的對象和結(jié)果都是集合,一次一集合的方式。3、關(guān)系的完整性

三類完整性約束:實體完整性、參照完整性、用戶定義的完整性;其中前兩種是關(guān)系模式中必須滿足的,被稱作是關(guān)系的兩個不變性。(1)實體完整性:若屬性A是基本關(guān)系R的主屬性,則屬性A不能取空值且必須唯一。

說明:1)

實體完整性規(guī)則是針對基本關(guān)系而言的;2)

關(guān)系模型中以主碼作為唯一性標識;3)

主碼中的屬性即主屬性不能取空值。

(2)參照完整性:外碼:設(shè)F是基本關(guān)系R的一個或一組屬性,但不是關(guān)系R的碼。如果F與基本關(guān)系S的主碼Ks相對應(yīng),則稱F是基本關(guān)系R的外碼;基本關(guān)系R稱為參照關(guān)系(Referencing

Relation);基本關(guān)系S稱為被參照關(guān)系(ReferencedRelation)或目標關(guān)系(TargetRelation)。

說明:1)

關(guān)系R和S不一定是不同的關(guān)系;2)

目標關(guān)系S的主碼Ks和參照關(guān)系的外碼F必須定義在同一個(或一組)域上;3)

外碼并不一定要與相應(yīng)的主碼同名。

參照完整性規(guī)則:

若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼它與基本關(guān)系S的主碼Ks相對應(yīng)(基本關(guān)系R和S不一定是不同的關(guān)系),則對于R中每個元組在F上的值必須為:或者取空值(F的每個屬性值均為空值),或者等于S中某個元組的主碼值。

參照完整性規(guī)則就是定義外碼與主碼之間的引用規(guī)則。

(3)用戶定義的完整性針對某一具體關(guān)系數(shù)據(jù)庫的約束條件,反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要求。4、關(guān)系代數(shù)

關(guān)系代數(shù)運算符:集合運算符、專門的關(guān)系運算符、算術(shù)比較運算符、邏輯運算符。

【此部分可以復(fù)習(xí)書本p55-60,為重點】

第三章

關(guān)系數(shù)據(jù)庫標準語言SQL1、SQL特點

SQL集數(shù)據(jù)查詢、數(shù)據(jù)定義、數(shù)據(jù)操縱、數(shù)據(jù)控制功能于一體;1)

數(shù)據(jù)定義a)

創(chuàng)建數(shù)據(jù)對象

create

e.g.

Createdatabaseb)

修改數(shù)據(jù)對象

alter

e.g.

altertablec)

刪除數(shù)據(jù)對象

drop

e.g

dropview2)

數(shù)據(jù)查詢a)

一般查詢

select

b)

集合查詢

count,

avg,

sum,

max,

min3)

數(shù)據(jù)操縱a)

Insert

delete

update4)

數(shù)據(jù)控制a)

Grantb)

revoke

主要特點:綜合統(tǒng)一,高度非過程化,面向集合的操作方式,以同一種語法結(jié)構(gòu)提供多種使用方式,語言簡潔、易學(xué)易用。2、外模式對應(yīng)于視圖和部分基本表,模式對應(yīng)于基本表,內(nèi)模式對應(yīng)于存儲文件。3、數(shù)據(jù)定義操作對象操作方式創(chuàng)建刪除修改數(shù)據(jù)庫CreatedatabaseDropdatabaseAlterdatabase表CreatetableDroptableAltertable視圖CreateviewDropview

索引CreateindexDropview

(1)定義數(shù)據(jù)庫Createdatabase<數(shù)據(jù)庫名>Dropdatabase<數(shù)據(jù)庫名>Alterdatabase<數(shù)據(jù)庫名>

<新數(shù)據(jù)庫名>

(2)定義基本表

創(chuàng)建表:

Createtable<表名>(<列名><數(shù)據(jù)類型>[列完整性約束條件][,<列名><數(shù)據(jù)類型>[列完整性約束條件]]…[,表級完整性約束條件])表級完整性約束包括:Primarykey名(字段[,字段2])

foreignkey名reference表2(字段[,字段2])Check名內(nèi)容

default

修改表:Altertable<表名>

[add<新列名>

<數(shù)據(jù)類型>[完整性約束]]

[drop<完整性約束名>]

[altercolumn<列名>

<數(shù)據(jù)類型>]

刪除表:

Droptable<表名>

(3)數(shù)據(jù)查詢【重點!】

Select[all|distinct]<目標列表達式>[別名][,<目標列表達式>[別名]]…From<表名或視圖名>[別名][,<表名或視圖名>[別名]]…Where<條件表達式>Groupby<列名>[having<條件表達式>]Orderby<列名1>[ASC|Desc][,<列名1>[ASC|Desc]]

(4)數(shù)據(jù)更新

插入數(shù)據(jù):

格式1:Insertinto<基本表名>[(列名表)]value(元組值)格式2:Insertinto<基本表名>[(列名表)]value(元組值),(元組值),(元組值),…格式3:Insertinto<基本表名>[(列名表)]Select查詢語句

修改數(shù)據(jù):update<表名>

set<列名>=<值>[,<列名>=<值>,…]

[where<條件表達式>]

刪除數(shù)據(jù):Deletefrom<表名>[where<條件表達式>]

(5)定義和刪除索引Create[unique][cluster]index<索引名>ON<表名>(列名

[<次序>][,列名

[<次序>]]…)Dropindex<索引名>建議索引的條件:1)

以查詢?yōu)橹饕?wù)的數(shù)據(jù)庫;2)

值域大的字段上;3)

經(jīng)常出現(xiàn)在where條件,orderby,groupby中的字段上;4)

經(jīng)常出現(xiàn)在連接條件中的字段上。

第四章

數(shù)據(jù)庫安全性1、計算機系統(tǒng)三類安全性問題

技術(shù)安全類,管理安全類,政策法律類。2、用戶標識與鑒別

(1)用戶標識和鑒別是系統(tǒng)提供的最外層安全保護措施。其方法是由系統(tǒng)提供一定的方式讓用戶標識自己的名字或身份;

(2)基本方法:1)

系統(tǒng)提供一定的方式讓用戶標識自己的名字或身份;2)

系統(tǒng)內(nèi)部記錄著所有合法用戶的標識;3)

每次用戶要求進入系統(tǒng)時,由系統(tǒng)核對用戶提供的身份標識;4)

通過鑒定后才提供機器使用權(quán);5)

用戶標識和鑒定可以重復(fù)多次;6)

比如:用戶名,密碼。3、存取控制

(1)主要包括兩部分:定義用戶權(quán)限,并將用戶權(quán)限登記到數(shù)據(jù)字典中;合法權(quán)限檢查。

用戶權(quán)限定義和合法權(quán)檢查機制一起組成了DBMS的安全子系統(tǒng)。

(2)常用存取控制方法

自主存取控制(DiscretionaryAccessControl,簡稱DAC):1)

同一用戶對于不同的數(shù)據(jù)對象有不同的存取權(quán)限2)

不同的用戶對同一對象也有不同的權(quán)限3)

用戶還可將其擁有的存取權(quán)限轉(zhuǎn)授給其他用戶強制存取控制(MandatoryAccessControl,簡稱MAC):1)

每一個數(shù)據(jù)對象被標以一定的密級2)

每一個用戶也被授予某一個級別的許可證3)

對于任意一個對象,只有具有合法許可證的用戶才可以存取4、

自主存取控制(DAC)(1)用戶權(quán)限是由兩個要素組成的:數(shù)據(jù)庫對象和操作類型。(2)通過SQL的grant和revoke語句實現(xiàn)。(3)定義用戶存取權(quán)限:定義用戶可以在哪些數(shù)據(jù)庫對象上進行哪些類型的操作。(4)授權(quán)格式:GRANT<權(quán)限>[,<權(quán)限>]...

[ON<對象類型><對象名>]

TO<用戶>[,<用戶>]...

[WITHGRANTOPTION];

(5)不允許循環(huán)授權(quán);

(6)發(fā)出grant:DBA,數(shù)據(jù)庫對象的創(chuàng)建者,擁有該權(quán)限的用戶。(7)回收格式:

REVOKE<權(quán)限>[,<權(quán)限>]...

[ON<對象類型><對象名>]

FROM<用戶>[,<用戶>]...;(8)授予的權(quán)限可以由DBA或授權(quán)者收回5、創(chuàng)建數(shù)據(jù)庫模式的權(quán)限

(1)對數(shù)據(jù)庫模式的授權(quán)由DBA在創(chuàng)建用戶時實現(xiàn);(2)格式:CREATE

USER

<username>

[WITH][DBA|RESOURCE|CONNECT]

(3)說明:只有系統(tǒng)的超級用戶才有權(quán)創(chuàng)建一個新的數(shù)據(jù)庫用戶;新創(chuàng)建的數(shù)據(jù)庫用戶只有三種權(quán)限:connect、resource、DBA。

(4)權(quán)限和可執(zhí)行的操作對照擁有的權(quán)限可否執(zhí)行的操作CREATEUSERCREATESCHEMACREATETABLE登錄數(shù)據(jù)庫執(zhí)行數(shù)據(jù)查詢和操縱DBA可以可以可以可以RESOURCE不可以不可以不可以不可以CONNECT不可以不可以不可以可以,但必須擁有相應(yīng)權(quán)限

(5)數(shù)據(jù)庫角色:是被命名的一組與數(shù)據(jù)庫操作相關(guān)的權(quán)限,角色是權(quán)限的集合。6、強制存取控制(MAC)(1)是指系統(tǒng)為保證更高程度的安全性,按照TDI/TCSEC標準中安全策略的要求,所采取的強制存取檢查手段;(2)MAC不是用戶能直接感知或進行控制的。(3)在MAC中,DBMS所管理的全部實體被分為主體和客體兩大類;主體是系統(tǒng)中的活動實體,客體是系統(tǒng)中的被動實體;(4)MAC機制就是通過對比主體的Lable和客體的Lable,最終確定主體是否能夠存取客體;(5)規(guī)則:

僅當主體的許可證級別大于或等于客體的密級時,該主體才能讀取相應(yīng)的客體;僅當主體的許可證級別等于客體的密級時,該主體才能寫相應(yīng)的客體。7、視圖機制

視圖機制間接地實現(xiàn)支持存取謂詞的用戶權(quán)限定義。

第五章

數(shù)據(jù)庫完整性1、數(shù)據(jù)庫的完整性:數(shù)據(jù)的正確性和相容性。2、為維護數(shù)據(jù)庫的完整性,DBMS必須能夠:1)

提供定義完整性約束條件的機制2)

提供完整性檢查的方法3)

違約處理3、實體完整性(1)關(guān)系模型的實體完整性在CREATE

TABLE中用PRIMARYKEY定義;

(2)實體完整性檢查和違約處理:插入或?qū)χ鞔a列進行更新操作時,RDBMS按照實體完整性規(guī)則自動進行檢查。包括:1)

檢查主碼值是否唯一,如果不唯一則拒絕插入或修改;2)

檢查主碼的各個屬性是否為空,只要有一個為空就拒絕插入或修改。4、參照完整性(1)關(guān)系模型中的參照完整性在CREATE

TABLE中用FOREIGNKEY短語定義哪些列為外碼,用REFERENCES指明其參照的主碼。

(2)可能破壞參照完整性的情況和違約處理:被參照表(例如Student)參照表(例如SC)違約處理可能破壞參照完整性

插入元組拒絕可能破壞參照完整性

修改外碼值拒絕刪除元組可能破壞參照完整性拒絕/級連刪除/設(shè)置為空值修改主碼值可能破壞參照完整性拒絕/級連修改/設(shè)置為空值5、觸發(fā)器(1)觸發(fā)器是用戶定義在關(guān)系表上的一類由事件驅(qū)動的特殊程序(過程)。(2)格式:CREATETRIGGER<觸發(fā)器名>

{BEFORE|AFTER}<觸發(fā)事件>ON<表名>

FOREACH

{ROW|STATEMENT}

[WHEN<觸發(fā)條件>]

<觸發(fā)動作體>

(3)表的創(chuàng)建者可以在表上創(chuàng)建觸發(fā)器,并且一個表上只能創(chuàng)建一定數(shù)量的觸發(fā)器;

(4)觸發(fā)事件:INSERT、DELETE、UPDATE;(5)觸發(fā)器類型:1)

行級觸發(fā)器(FOREACHROW):對每一行觸發(fā)一次;2)

語句級觸發(fā)器(FOREACHSTATEMENT):觸發(fā)動作只發(fā)生一次;(6)觸發(fā)動作體:匿名PL/SQL過程塊,或?qū)σ延写鎯^程的調(diào)用。(7)觸發(fā)器的執(zhí)行,是由觸發(fā)事件激活的,并由數(shù)據(jù)庫服務(wù)器自動執(zhí)行。(8)觸發(fā)器激活時執(zhí)行順序:1)

執(zhí)行該表上的BEFORE觸發(fā)器;2)

激活觸發(fā)器的SQL語句;3)

執(zhí)行該表上的AFTER觸發(fā)器。(9)刪除觸發(fā)器:DROPTRIGGER<觸發(fā)器名>ON<表名>;觸發(fā)器必須是一個已經(jīng)創(chuàng)建的觸發(fā)器,并且只能由具有相應(yīng)權(quán)限的用戶刪除。

第六章

關(guān)系數(shù)據(jù)理論本章可考題目:1、判斷分解的無損連接性和保持函數(shù)依賴2、求屬性集閉包3、求極小函數(shù)依賴4、分解關(guān)系模式,將1NF分解為3NF

1、范式

按屬性間依賴情況劃分。

(1)第一范式:每一分量必須是不可分的數(shù)據(jù)項;

存在問題:數(shù)據(jù)冗余太大,更新異常,插入異常,刪除異常;

(2)第二范式:每一個非主屬性完全依賴于碼;

存在問題:插入異常,刪除異常,修改復(fù)雜;

(3)第三范式:每一個非主屬性既不部分依賴于碼也不傳遞依賴于碼;

(4)BCNF:每一個決定屬性因素都包含碼;

一個滿足BCNF的關(guān)系模式有:1)

所有非主屬性對每一個碼都是完全函數(shù)依賴;2)

所有的主屬性對每一個不包含它的碼,也是完全函數(shù)依賴;3)

沒有任何屬性完全函數(shù)依賴于非碼的任何一組屬性;

2、Armstrong公理系統(tǒng)(有效性,完備性)

(1)自反律:若Y

í

X

í

U,則X

→Y為F所蘊含。

(2)增廣律:若X→Y為F所蘊含,且Z

í

U,則XZ→YZ為F所蘊含。

(3)傳遞律:若X→Y及Y→Z為F所蘊含,則X→Z為F所蘊含。3、推理規(guī)則(1)合并規(guī)則:由X→Y,X→Z,有X→YZ。(2)偽傳遞規(guī)則:由X→Y,WY→Z,有XW→Z。(3)分解規(guī)則:由X→Y及

ZíY,有X→Z。4、函數(shù)的依賴閉包

(1)在關(guān)系模式R<U,F(xiàn)>中為F所邏輯蘊含的函數(shù)依賴的全體叫作F的閉包,記為F+。

(2)設(shè)F為屬性集U上的一組函數(shù)依賴,X

íU,

XF+={

A|X→A能由F

根據(jù)Armstrong公理導(dǎo)出},XF+稱為屬性集X關(guān)于函數(shù)依賴集F

的閉包。

(3)求閉包算法

求屬性集X(X

í

U)關(guān)于U上的函數(shù)依賴集F

的閉包XF+輸入:X,F(xiàn)

輸出:XF+步驟:(1)令X(0)=X,i=0(2)求B,這里B

={

A

|($

V)(

$

W)(V→W?F∧V

í

X(i)∧A?

W)};(3)X(i+1)=B∪X(i)(4)判斷X(i+1)=

X

(i)嗎?(5)若相等或X(i)=U,

則X(i)就是XF+,算法終止。(6)若否,則

i=i+l,返回第(2)步。5、最小依賴集

(1)如果函數(shù)依賴集F滿足下列條件,則稱F為一個極小函數(shù)依賴集。亦稱為最小依賴集或最小覆蓋。

F中任一函數(shù)依賴的右部僅含有一個屬性。

F中不存在這樣的函數(shù)依賴X→A,使得F與F-{X→A}等價。

F中不存在這樣的函數(shù)依賴X→A,X有真子集Z使得F-{X→A}∪{Z→A}與F等價。

(2)極小化過程:

1)逐一檢查F中各函數(shù)依賴FDi:X→Y,若Y=A1A2

…Ak,k

>2,則用{

X→Aj

|j=1,2,…,

k}來取代X→Y。2)逐一檢查F中各函數(shù)依賴FDi:X→A,令G=F-{X→A},若A?XG+,則從F中去掉此函數(shù)依賴。3)逐一取出F中各函數(shù)依賴FDi:X→A,設(shè)X=B1B2…Bm,逐一考查Bi

(i=l,2,…,m),若A

?(X-Bi

)F+,則以X-Bi

取代X。6、分解算法1)

極小化函數(shù)依賴集2)

把函數(shù)依賴集按左部相同分組3)

有沒有一組屬性整體包含另一組之中4)

若有,兩組放在一個關(guān)系里面5)

若無,一組為一個關(guān)系,其中左部是他們的主碼6)

結(jié)束7、判斷分解的無損連接性和保持函數(shù)依賴

第七章

數(shù)據(jù)庫設(shè)計本章可考題目:1、設(shè)計E-R圖2、E-R圖向關(guān)系模型轉(zhuǎn)換

1、數(shù)據(jù)庫設(shè)計的基本步驟(了解各個階段的工作)

(1)需求分析

(2)概念結(jié)構(gòu)設(shè)計:E-R圖

(3)邏輯結(jié)構(gòu)設(shè)計階段

(4)物理設(shè)計階段

(5)數(shù)據(jù)庫實施階段

(6)數(shù)據(jù)庫運行和維護階段2、概念結(jié)構(gòu)設(shè)計

(1)四類方法:自頂向下,自底向上,逐步擴張,混合策略;

(2)各分E-R圖之間的沖突:屬性沖突、命名沖突、結(jié)構(gòu)沖突;3、E-R圖向關(guān)系模型轉(zhuǎn)換

(1)E-R圖由實體型、實體的屬性、實體型之間的聯(lián)系三個要素組成;

(2)遵循原則:一個實體型轉(zhuǎn)換為一個關(guān)系模式,實體的屬性就是關(guān)系的屬性,實體的碼就是關(guān)系的碼;4、數(shù)據(jù)庫的物理設(shè)計(了解什么情況下需要建立索引)1)

如果一個(或一組)屬性經(jīng)常在查詢條件中出現(xiàn),則考慮在這個(或這組)屬性上建立索引(或組合索引);2)

如果一個屬性經(jīng)常作為最大值和最小值等聚集函數(shù)的參數(shù),則考慮在這個屬性上建立索引;3)

如果一個(或一組)屬性經(jīng)常在連接操作的連接條件中出現(xiàn),則考慮在這個(或這組)屬性上建立索引;

第九章

關(guān)系查詢處理和查詢優(yōu)化本章可考題目:1、根據(jù)SQL語句寫出等價關(guān)系代數(shù)表達式2、對查詢樹進行優(yōu)化

1、查詢處理

(1)查詢的四個階段:查詢分析、查詢檢查、查詢優(yōu)化、查詢執(zhí)行;

(2)查詢優(yōu)化方法:

代數(shù)優(yōu)化:指關(guān)系代數(shù)表達式的優(yōu)化,即按照一定的規(guī)則,改變代數(shù)表達式中操作的次序和組合,使查詢執(zhí)行更高效;

物理優(yōu)化:指存取路徑和底層操作算法的選擇,選擇的依據(jù)可以是基于規(guī)則、代價或者語義。2、代數(shù)優(yōu)化

(1)關(guān)系代數(shù)表達式等價變換規(guī)則【11條】p269

(2)查詢樹啟發(fā)式優(yōu)化規(guī)則1)

選擇運算應(yīng)盡可能先做。在優(yōu)化策略中這是最重要、最基本的一條2)

把投影運算和選擇運算同時進行3)

把投影同其前或其后的雙目運算結(jié)合起來4)

把某些選擇同在它前面要執(zhí)行的笛卡爾積結(jié)合起來成為一個連接運算5)

找出公共子表達式

(3)方法:

1)利用等價變換規(guī)則4把形如σF1∧F2∧…∧Fn(E)變換為σF1(σF2(…(σFn(E))…))。

2)對每一個選擇,利用等價變換規(guī)則4~9盡可能把它移到樹的葉端。3)對每一個投影利用等價變換規(guī)則3,5,10,11中的一般形式盡可能把它移向樹的葉端。4)利用等價變換規(guī)則3~5把選擇和投影的串接合并成單個選擇、單個投影或一個選擇后跟一個投影。使多個選擇或投影能同時執(zhí)行,或在一次掃描中全部完成。5)把上述得到的語法樹的內(nèi)節(jié)點分組。每一雙目運算(×,

,∪,-)和它所有的直接祖先為一組(這些直接祖先是(σ,π運算)。

第十章

數(shù)據(jù)庫恢復(fù)技術(shù)本章可考題目:基本以選擇、填空為主1、了解事務(wù)的概念及四個特性;2、了解數(shù)據(jù)庫的幾種故障以及恢復(fù)方法;3、恢復(fù)實現(xiàn)操作的兩種方法;

1、事務(wù)

(1)事務(wù)是用戶定義的一個數(shù)據(jù)庫操作序列,這些操作要么全做要么全部做,是一個不可分割的工作單位;

(2)事務(wù)通常以begintransaction開始,以mit和rollback結(jié)束;

(3)事務(wù)的四大特性:原子性、一致性、隔離性、持續(xù)性。原子性(Atomicity):事務(wù)是數(shù)據(jù)庫的邏輯工作單位,事務(wù)中包括的諸操作要么都做,要么都不做一致性(Consistency):事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫從一個一致性狀態(tài)變到另一個一致性狀態(tài)一致性狀態(tài):數(shù)據(jù)庫中只包含成功事務(wù)提交的結(jié)果隔離性(Isolation):在多個事務(wù)并發(fā)執(zhí)行時,系統(tǒng)應(yīng)保證與這些事務(wù)先后單獨執(zhí)行時的結(jié)果一樣持續(xù)性(Durability):一個事務(wù)一旦完成全部操作后,它對數(shù)據(jù)庫的所有更新應(yīng)永久地反映在數(shù)據(jù)庫中2、數(shù)據(jù)庫故障

(1)事務(wù)內(nèi)部的故障:

有的是可以通過事務(wù)程序發(fā)現(xiàn),有的是非預(yù)期的;

如運算溢出、并發(fā)事務(wù)發(fā)生死鎖而被撤銷該事務(wù)、違反了某些完整性限制;

(2)系統(tǒng)故障:

指造成系統(tǒng)停止運轉(zhuǎn)的任何事件,使得系統(tǒng)要重新啟動;

如CPU故障、操作系統(tǒng)故障、DBMS代碼錯誤、系統(tǒng)斷電;

(3)介質(zhì)故障:

如磁盤損壞、磁頭碰撞、瞬間磁場干擾。

(4)計算機病毒3、恢復(fù)的實現(xiàn)操作

(1)恢復(fù)操作的基本原理:冗余;

(2)建立冗余數(shù)據(jù)最常用的技術(shù):數(shù)據(jù)轉(zhuǎn)儲、登錄日志文件;

(3)數(shù)據(jù)轉(zhuǎn)儲:轉(zhuǎn)儲是指DBA將整個數(shù)據(jù)庫復(fù)制到磁帶或另一個磁盤上保存起來的過程,備用的數(shù)據(jù)稱為后備副本或后援副本;

數(shù)據(jù)轉(zhuǎn)儲分類:動態(tài)轉(zhuǎn)儲和靜態(tài)轉(zhuǎn)儲,海量轉(zhuǎn)儲和增量轉(zhuǎn)儲;

(4)登記日志文件:

日志文件(log)是用來記錄事務(wù)對數(shù)據(jù)庫的更新操作的文件;

兩種格式:以記錄為單位和以數(shù)據(jù)塊為單位的日志文件;

登記日志文件的原則:登記的次序嚴格按并行事務(wù)執(zhí)行的時間次序,必須先寫日志文件,后寫數(shù)據(jù)庫。4、各種故障的恢復(fù)策略

(1)事務(wù)故障:由恢復(fù)子系統(tǒng)應(yīng)利用日志文件撤消(UNDO)此事務(wù)已對數(shù)據(jù)庫進行的修改;【不需要用戶干預(yù)】

(2)系統(tǒng)故障:Undo故障發(fā)生時未完成的事務(wù),Redo已完成的事務(wù);【不需要用戶干預(yù)】

(3)介質(zhì)故障:重新安裝數(shù)據(jù)庫,然后重做已完成的事務(wù)(Redo)。5、具有檢查點的恢復(fù)技術(shù)

(1)內(nèi)容:1)

在日志文件中增加檢查點記錄(checkpoint);2)

增加重新開始文件;3)

恢復(fù)子系統(tǒng)在登錄日志文件期間動態(tài)地維護日志;(2)動態(tài)維護日志文件的方法:周期性地執(zhí)行如下操作:建立檢查點,保存數(shù)據(jù)庫狀態(tài)。

第十一章

并發(fā)控制本章可考題目:本章也基本以選擇、填空為主1、判斷并發(fā)控制帶來的三種數(shù)據(jù)不一致性;2、了解兩種基本類型的封鎖;3、了解解決活鎖和死鎖的方法;

1、并發(fā)控制(1)并發(fā)控制機制的任務(wù):1)

對并發(fā)操作進行正確調(diào)度2)

溫馨提示

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

評論

0/150

提交評論