數(shù)據(jù)庫每章知識(shí)點(diǎn)總結(jié)
第一章
數(shù)據(jù)(Data)是數(shù)據(jù)庫中存儲(chǔ)的基本對(duì)象;描述事物的符號(hào)記錄稱為數(shù)據(jù)。
數(shù)據(jù)庫(DataBase)的特點(diǎn):永久存儲(chǔ)、有組織和可共享三個(gè)基本特點(diǎn)。
數(shù)據(jù)庫管理系統(tǒng)的功能:①數(shù)據(jù)定義功能②數(shù)據(jù)組織、存儲(chǔ)和管理③數(shù)據(jù)操縱功能④數(shù)據(jù)庫的事務(wù)管理和運(yùn)行管理⑤數(shù)據(jù)庫的建立和維護(hù)功能⑥其他功能。
數(shù)據(jù)庫系統(tǒng)(DBS)的特點(diǎn):數(shù)據(jù)模型:
應(yīng)滿足三方面的要求:一是能夠比較真實(shí)地模擬現(xiàn)實(shí)世界;二是容易為人所理解;三是便于在計(jì)算機(jī)上實(shí)現(xiàn)。
數(shù)據(jù)模型組成三要素:數(shù)據(jù)結(jié)構(gòu);數(shù)據(jù)操作;數(shù)據(jù)的完整性約束條件。
數(shù)據(jù)模型分兩類:概念模型;邏輯模型。信息世界中的基本概念:
實(shí)體:客觀存在并可相互區(qū)別的事物稱為實(shí)體。屬性:實(shí)體所具有的某一特性稱為屬性。碼:唯一標(biāo)識(shí)實(shí)體的屬性稱為碼。
域:域是一組具有相同數(shù)據(jù)類型的值的集合。實(shí)體型:具有相同屬性的實(shí)體必然具有共同的特征而后性質(zhì)。用實(shí)體名及其屬性名集合來抽象和刻畫同類實(shí)體,稱為實(shí)體型。
實(shí)體集合:同意類型實(shí)體的集合稱為實(shí)體集。聯(lián)系:在現(xiàn)實(shí)世界中,事物內(nèi)部以及事物之間是有聯(lián)系的,這些聯(lián)系就在聯(lián)系在信息世界中反映為實(shí)體(型)內(nèi)部的聯(lián)系和實(shí)體(型)之間的聯(lián)系。
數(shù)據(jù)庫系統(tǒng)的三級(jí)模式結(jié)構(gòu):
數(shù)據(jù)庫系統(tǒng)的三級(jí)模式結(jié)構(gòu)是指數(shù)據(jù)庫系統(tǒng)是由外模式、模式和內(nèi)模式三級(jí)構(gòu)成。
模式也稱邏輯模式,是數(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ù)的邏輯表示。
內(nèi)模式也稱存儲(chǔ)模式,一個(gè)數(shù)據(jù)庫只有一個(gè)內(nèi)模式。它是數(shù)據(jù)物理結(jié)構(gòu)和存儲(chǔ)方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式。數(shù)據(jù)庫的二級(jí)映像功能與數(shù)據(jù)獨(dú)立性
外模式/模式映像:模式描述的是數(shù)據(jù)的全局邏輯結(jié)構(gòu),外模式描述的是數(shù)據(jù)的局部邏輯結(jié)構(gòu)。模式/內(nèi)模式映像:數(shù)據(jù)庫中只有一個(gè)模式,也只有一個(gè)內(nèi)模式,所以模式/內(nèi)模式映像是唯一的,它定義了數(shù)據(jù)全局邏輯結(jié)構(gòu)之間的對(duì)應(yīng)關(guān)系。
第二章
關(guān)系模型描述出現(xiàn)實(shí)世界的實(shí)體一集實(shí)體間的各種聯(lián)系。
域是一組具有相同數(shù)據(jù)類型的集合。笛卡爾積是域上面的一種集合運(yùn)算關(guān)系是笛卡爾積的有限子集。
關(guān)系中的某一屬性組的值能唯一地標(biāo)識(shí)一個(gè)元組,則稱該屬性組為候選碼。
若一個(gè)甘系有多個(gè)候選碼,則選定其中一個(gè)為主碼。
候選碼的諸屬性稱為主屬性。不包含在任何候選碼中的屬性稱為非主屬性或非碼屬性;镜年P(guān)系操作:關(guān)系模型匯總常用的關(guān)系操作包括查詢操作和插入、刪除、修改操作兩大部分。關(guān)系的查詢表達(dá)能力很強(qiáng),是關(guān)系操作中最主要的部分。查詢操作又可以分為:選擇、投影、鏈接、除、并、查、交、笛卡爾積等。其中選擇、投影、并、差、笛卡爾積是5種基本操作。其他操作時(shí)可以用基本操作來定義和導(dǎo)出的。
特點(diǎn):關(guān)系操作的特點(diǎn)是是集合操作方式,既操作對(duì)象和結(jié)果都是集合。
關(guān)系的三類完整性約束的概念:
實(shí)體完整性:若屬性(指一個(gè)或一組屬性)A是基本關(guān)系R的主屬性,則A不能取空值。參照完整性:若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼,它與基本關(guān)系S的主碼K,相對(duì)應(yīng)(基本關(guān)系R和S不一定是不同的關(guān)系),則對(duì)于R中每個(gè)元組在F上的值必須為:或者取空值(F的每個(gè)屬性值均為空值);或者等于S中某個(gè)元組的主碼值。
用戶定義完整性:用戶定義完整性就是針對(duì)某一具體關(guān)系數(shù)據(jù)庫的約束條件。它反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要求。
第三章
SQL的特點(diǎn):綜合統(tǒng)一、高度非過程化、面向集合的操作方式、以同一種語法結(jié)構(gòu)提供多種使用方式、語言簡(jiǎn)潔,易學(xué)易用。
三級(jí)模式結(jié)構(gòu):外模式對(duì)應(yīng)于視圖和部分基本表,模式對(duì)應(yīng)于基本表,內(nèi)模式對(duì)應(yīng)于存儲(chǔ)文件。
視圖是從一個(gè)或幾個(gè)基本表導(dǎo)出的表。它與基本表不同,是一個(gè)虛表。數(shù)據(jù)庫中只存放視圖的定義,而不存放視圖對(duì)應(yīng)的數(shù)據(jù),這些數(shù)據(jù)
仍存放在原來的基本表中。視圖就像一個(gè)窗口,透過它可以看到實(shí)據(jù)庫中自己感興趣的數(shù)據(jù)及其變化。
視圖的作用:視圖能夠簡(jiǎn)化用戶的操作、視圖使用戶能以多種角度看待統(tǒng)一數(shù)據(jù)、視圖對(duì)重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨(dú)立性、視圖能夠?qū)C(jī)密數(shù)據(jù)提供安全保護(hù)、適當(dāng)?shù)睦靡晥D可以更清晰的表達(dá)查詢。SQL的數(shù)據(jù)定義語句:(P83)
第四章
數(shù)據(jù)庫的安全性是指保護(hù)數(shù)據(jù)庫以防止不合法的使用所造成的數(shù)據(jù)泄露、更改或破壞。計(jì)算機(jī)系統(tǒng)安全性是指為家算計(jì)系統(tǒng)建立和采取的各種安全保護(hù)措施,以保護(hù)計(jì)算機(jī)系統(tǒng)中的硬件、軟件及數(shù)據(jù),防止其因偶然或惡意的原因使系統(tǒng)遭到破壞,數(shù)據(jù)遭到更改或泄漏等。授權(quán)與回收
GRANT語句向用戶授予權(quán)限,REVOKE語句收回授權(quán)的權(quán)限。
GRANT語句的一般格式為:
GRANT[,]ON[,]TO[,][WITHGRANTOPTION];例:
GRANTSELECT,UPDATE(Sno),ALLPRIVILEGES,INSERT
ONTABLEStudent,CourseTOU2,U3,PUBLICWITHGRANTOPTION
REVOKE語句的一般格式:REVOKE[,]ON[,]FROM[,][CASCADE|RESTRICT];例:
REVOKEINSERTONTABLESCFROMU5CASCADE
第五章
數(shù)據(jù)庫完整性的概念:數(shù)據(jù)庫完整性是指數(shù)據(jù)的正確性和相容性。
數(shù)據(jù)的完整性是為了防止數(shù)據(jù)庫中存在不符合語義的數(shù)據(jù),也就是防止數(shù)據(jù)庫中存在不正確的數(shù)據(jù)。
三類基本的完整性:實(shí)體完整性、參照完整性、用戶定義完整性。
第六章
設(shè)R(U)是屬性集U上的關(guān)系模式。X,Y是U的子集。若對(duì)R(U)的任意一個(gè)可能的關(guān)系r,r中不可能存在兩個(gè)元組在X上的屬性值相等,而Y上的屬性值不等,則稱X函數(shù)確定Y或Y函數(shù)依賴于X,記作X→Y。X→Y,但Y\\X則稱X→Y是非平凡的函數(shù)依賴。X→Y,但Y\\X則稱X→Y是平凡的函數(shù)依賴。在R(U)中,如果X→Y,并且對(duì)于X的任何一個(gè)真子集X′,都有X′→Y,則稱Y對(duì)X完全函數(shù)依賴。記作X→(F↑)Y
若X→Y,但Y不完全函數(shù)依賴于X,則稱Y對(duì)X部分函數(shù)依賴,記作:X→(P↑)Y
范式:關(guān)系數(shù)據(jù)庫中的關(guān)系是要滿足一定要求的,滿足不同程度要求的為不同范式。滿足最低要求的叫第一范式,簡(jiǎn)稱1NF。
若R∈1NF,且每一個(gè)非主屬性完全函數(shù)依賴于碼,則R∈2NF
關(guān)系模式R中若不存在這樣的碼X,屬性組Y及非主屬性Z(Z\\Y)使得X→Y,Y→Z成立,Y→/X,則稱R∈3NF。
不好的關(guān)系模式帶來的問題:在關(guān)系數(shù)據(jù)庫中,對(duì)關(guān)系模式的基本要求是滿足第一范式。不好的關(guān)系模式會(huì)出現(xiàn)插入、刪除異常,修改復(fù)雜,數(shù)據(jù)冗余等毛病。
第七章
數(shù)據(jù)庫設(shè)計(jì)的基本步驟:
需求分析→概念結(jié)構(gòu)設(shè)計(jì)→邏輯結(jié)構(gòu)設(shè)計(jì)→物理結(jié)構(gòu)設(shè)計(jì)→數(shù)據(jù)庫實(shí)施→數(shù)據(jù)庫運(yùn)行和維護(hù)。
概念結(jié)構(gòu)設(shè)計(jì)的結(jié)果是將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)。通過概念設(shè)計(jì)得到的概念模型是從現(xiàn)實(shí)世界的角度對(duì)所要解決的問題的描述。第八章
數(shù)據(jù)庫工作單元與源程序工作單元之間的通信主要包括:
1.向主語言傳遞SQL語句的執(zhí)行狀態(tài)信息,使主語言能夠據(jù)此信息控制程序流程,主要用SQL通信區(qū)實(shí)現(xiàn)
2.主語言向SQL語句提供參數(shù),主要用主變量實(shí)現(xiàn)
3.將SQL語句查詢數(shù)據(jù)庫的結(jié)果交主語言處理,主要用主變量和游標(biāo)實(shí)現(xiàn)。
第九章
查詢優(yōu)化就是選擇一個(gè)高效執(zhí)行的查詢處理策略。按照優(yōu)化的層次一般可分為代數(shù)優(yōu)化和物理優(yōu)化。
代數(shù)優(yōu)化是指關(guān)系代數(shù)表達(dá)式的優(yōu)化,即按照一定的規(guī)則,改變代數(shù)表達(dá)式中操作的次序和組合,使查詢執(zhí)行更高效。
物理優(yōu)化則是指存取路徑和底層操作算法的選擇。選擇的依據(jù)可以是基于規(guī)則的,也可以是基于代價(jià)的,還可以是基于語義的。
第十章
事務(wù)是用戶定義的一個(gè)數(shù)據(jù)庫操作序列,是數(shù)據(jù)庫應(yīng)用程序的基本邏輯單元。
事務(wù)具有四個(gè)特性:原子性、一致性、隔離性和持續(xù)性,簡(jiǎn)稱ACID。
故障的種類:事務(wù)內(nèi)部的故障、系統(tǒng)故障、介質(zhì)故障、計(jì)算機(jī)病毒。
當(dāng)系統(tǒng)運(yùn)行過程中發(fā)生故障,利用數(shù)據(jù)庫后備副本和日志文件就可以將數(shù)據(jù)庫恢復(fù)到故障前的某個(gè)一致性狀態(tài)。
事務(wù)故障的恢復(fù):1.反向掃描日志文件,查找該事務(wù)的更新操作;2.對(duì)該事務(wù)的更新操作執(zhí)行逆操作;3.繼續(xù)反向掃描日志文件,查找該事務(wù)的其他更新操作,并做同樣處理;4.直到讀到此事務(wù)的開始表記,事務(wù)故障恢復(fù)就完成了。
系統(tǒng)故障的恢復(fù):1.正向掃描日志文件,找出在故障發(fā)生前已經(jīng)提交的事務(wù),將其事務(wù)標(biāo)識(shí)記入重做隊(duì)列。同時(shí)找出故障發(fā)生時(shí)尚未完成的事務(wù),將其事務(wù)標(biāo)識(shí)記入撤銷隊(duì)列。2.對(duì)撤銷隊(duì)列中的各個(gè)事務(wù)進(jìn)行撤銷處理;3.對(duì)重做隊(duì)列中的各個(gè)事務(wù)進(jìn)行重做處理。
介質(zhì)故障的恢復(fù):1.裝入最新的數(shù)據(jù)庫后備副本,使數(shù)據(jù)庫恢復(fù)到最近一次轉(zhuǎn)儲(chǔ)時(shí)的一致性狀態(tài);2.裝入相應(yīng)的日志文件副本,重做已完成的事務(wù)。
第十一章
并發(fā)操作:多個(gè)處理機(jī)同時(shí)運(yùn)行多個(gè)事務(wù),實(shí)現(xiàn)多個(gè)事務(wù)真正的并行運(yùn)行。
三種數(shù)據(jù)不一致性:丟失修改、不可重復(fù)讀、讀“臟”數(shù)據(jù)
兩段鎖協(xié)議是指所有事務(wù)必須分兩個(gè)階段對(duì)數(shù)據(jù)加鎖和解鎖。
1.在對(duì)任何數(shù)據(jù)進(jìn)行讀、寫操作之前,首先要申請(qǐng)并獲得對(duì)該數(shù)據(jù)的封鎖。
2.在釋放一個(gè)封鎖之后,事務(wù)不再申請(qǐng)和獲得任何其他的封鎖。
“兩段”鎖的含義是,事務(wù)分為兩個(gè)階段,第一階段是獲得封鎖,也稱為擴(kuò)展封鎖。這個(gè)階段事務(wù)可以申請(qǐng)獲得任何數(shù)據(jù)項(xiàng)上的任何類型的鎖,但是不能釋放任何鎖。第二階段是釋放封鎖,也稱為收縮階段。這個(gè)階段,事務(wù)可以釋放任何數(shù)據(jù)項(xiàng)行的任何類型的鎖,但是不能再申請(qǐng)任何鎖。
擴(kuò)展閱讀:數(shù)據(jù)庫中SQL知識(shí)點(diǎn)重點(diǎn)章節(jié)總結(jié)與歸納很全的哦
第一章緒論
1.基本概念
(1)數(shù)據(jù)庫;(2)數(shù)據(jù)庫管理系統(tǒng);(3)數(shù)據(jù)庫系統(tǒng);(4)實(shí)體;(5)屬性;(6)碼;(7)域;(8)實(shí)體型;(9)實(shí)體集;(10)聯(lián)系(1:1)(1:n)(m:n)(11)現(xiàn)實(shí)世界、觀念世界(信息世界)、數(shù)據(jù)世界
2.數(shù)據(jù)管理技術(shù)的發(fā)展階段
人工管理階段、文件系統(tǒng)階段、數(shù)據(jù)庫系統(tǒng)階段和高級(jí)數(shù)據(jù)庫技術(shù)階段等各階段的特點(diǎn)。3.數(shù)據(jù)庫系統(tǒng)的特點(diǎn)(1)數(shù)據(jù)結(jié)構(gòu)化
(2)共享性高,冗余度低,易擴(kuò)充(3)獨(dú)立性高
(4)由DBMS統(tǒng)一管理和控制4.DBMS的數(shù)據(jù)控制功能(1)數(shù)據(jù)的安全性保護(hù)(2)數(shù)據(jù)的完整性檢查(3)并發(fā)控制(4)數(shù)據(jù)庫恢復(fù)5.數(shù)據(jù)模型的組成要素
數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作、數(shù)據(jù)的約束條件6.最常用的數(shù)據(jù)模型
層次、網(wǎng)狀、關(guān)系、面向?qū)ο竽P?.關(guān)系模型
關(guān)系:一張表元組:表中的一行屬性:表中的一列
主碼:表中的某個(gè)屬性組,它可以唯一確定一個(gè)元組域:屬性的取值范圍
分量:元組中的一個(gè)屬性值關(guān)系模式:對(duì)關(guān)系的描述。
表示為:關(guān)系名(屬性1,屬性2,…屬性n)8.關(guān)系數(shù)據(jù)模型優(yōu)缺點(diǎn)
(1)建立在嚴(yán)格的數(shù)學(xué)概念基礎(chǔ)之上(2)概念單一
(3)存取路徑對(duì)用戶透明9.數(shù)據(jù)庫系統(tǒng)的三級(jí)模式結(jié)構(gòu)內(nèi)模式、外模式、模式二級(jí)映射
10.數(shù)據(jù)庫系統(tǒng)的組成本章重要概念
(1)DB、DBMS和DBS的定義(2)數(shù)據(jù)管理技術(shù)的發(fā)展階段人工管理階段、文件系統(tǒng)階段、數(shù)據(jù)庫系統(tǒng)階段和高級(jí)數(shù)據(jù)庫技術(shù)階段等各階段的特點(diǎn)。(3)數(shù)據(jù)描述概念設(shè)計(jì)、邏輯設(shè)計(jì)和物理設(shè)計(jì)等各階段中數(shù)據(jù)描述的術(shù)語,概念設(shè)計(jì)中實(shí)體間二元聯(lián)系的描述(1:1,1:N,M:N)。(4)數(shù)據(jù)模型數(shù)據(jù)模型的定義,兩類數(shù)據(jù)模型,邏輯模型的形式定義,ER模型,層次模型、網(wǎng)狀模型、關(guān)系模型和面向?qū)ο竽P偷臄?shù)據(jù)結(jié)構(gòu)以及聯(lián)系的實(shí)現(xiàn)方式。(5)DB的體系結(jié)構(gòu)三級(jí)結(jié)構(gòu),兩級(jí)映象,兩級(jí)數(shù)據(jù)獨(dú)立性,體系結(jié)構(gòu)各個(gè)層次中記錄的聯(lián)系。(6)DBMS(數(shù)據(jù)庫管理系統(tǒng))DBMS的工作模式、主要功能和模塊組成。
(7)DBS(數(shù)據(jù)庫系統(tǒng))DBS的組成,DBA,DBS的全局結(jié)構(gòu),DBS結(jié)構(gòu)的分類。
第二章關(guān)系數(shù)據(jù)庫
1.基本概念
關(guān)系,候選碼,主碼,主屬性,非主屬性,鍵2.完整性約束
實(shí)體完整性、參照完整性、用戶定義完整性3.笛卡兒積4.關(guān)系的性質(zhì)
列是同質(zhì)的
不同的列可出自同一個(gè)域,每一列為一個(gè)屬性,不同的屬性要有不同的屬性
名列的順序無所謂
任意兩個(gè)元組不能完全相同行的順序無所謂
分量必須取原子值,即每一個(gè)分量必須是不可分的數(shù)據(jù)項(xiàng)
5.關(guān)系的完整性
實(shí)體完整性、參照完整性、用戶定義的完整性6.關(guān)系代數(shù)
(1)并、交、差、廣義笛卡兒積(2)選擇(3)投影
(4)連接:等值連接、自然連接
超鍵(SuperKey):在關(guān)系中能惟一標(biāo)識(shí)元組的屬性集稱為關(guān)系模式的超鍵。
候選鍵(CandidateKey):不含有多余屬性的超鍵稱為候選鍵。也就是在候選鍵中,若要再刪除屬性,就不是鍵了。
主鍵:(PrimaryKey):用戶選作元組標(biāo)識(shí)的一個(gè)侯選鍵稱為主鍵。一般,如不加說明,則鍵是指主鍵。
外鍵:(ForeignKey):如果關(guān)系R中屬性K是其他模式的主鍵,那么K在模式R中稱為外鍵
例如:學(xué)生(學(xué)號(hào),姓名,性別,駕駛證號(hào))假定學(xué)生不重名超鍵:(學(xué)號(hào),姓名),(學(xué)號(hào),性別),(學(xué)號(hào),姓名,性別),(姓名,性別)等等候選鍵:學(xué)號(hào),姓名
主鍵:你在數(shù)據(jù)庫定義的時(shí)候,如果選擇學(xué)號(hào)作為鍵,那么學(xué)號(hào)就是候選鍵外鍵:駕駛證號(hào)本章的重要概念(1)基本概念關(guān)系模型,關(guān)鍵鍵(主鍵和外鍵),關(guān)系的定義和性質(zhì),三類完整性規(guī)則,ER模型到關(guān)系模型的轉(zhuǎn)換規(guī)則。(2)關(guān)系代數(shù)五個(gè)基本操作,四個(gè)組合操作,七個(gè)擴(kuò)充操作。
第三章SQL語言
1.SQL的特點(diǎn)
綜合統(tǒng)一
高度非過程化
面向集合的操作方式
以同一種語法結(jié)構(gòu)提供兩種使用方式語言簡(jiǎn)潔,易學(xué)易用
2.表
(1)創(chuàng)建表createtablecreatetablestudent(Snochar(5)notnull,Snamechar(20)unique,Ssexchar(1),Sageint,
Sdeptchar(15));(2)createtablecustomer(
customer_namechar(20)notnull,customer_streetchar(30),customer_citychar(30),
primarykey(customer_name));(3)createtableaccount(
account_numberchar(10)notnull,branch_namechar(15),balanceint,
primarykey(account_number),
foreignkey(branch_name)referencebranch(branch_name),check(balance>=0));(2)修改表altertable(3)刪除表droptable3.索引
(1)創(chuàng)建索引createindex(2)刪除dropindex4.查詢select(1)格式
(2)單表查詢:選擇列、滿足條件、排序、分組、集函數(shù)(3)連接查詢(4)嵌套查詢IN、比較、(ANY或ALL)、EXISTS(5)集合查詢
5.更新數(shù)據(jù)INSERT、UPDATE、DELETE6.視圖(1)建立視圖Createview(2)視圖的作用7.數(shù)據(jù)控制
(1)授權(quán)Grant
(2)收回權(quán)限Revoke本章的重要概念
(1)SQL數(shù)據(jù)庫的體系結(jié)構(gòu),SQL的組成。
(2)SQL的數(shù)據(jù)定義:SQL模式、基本表和索引的創(chuàng)建和撤銷。
(3)SQL的數(shù)據(jù)查詢;SELECT語句的句法,SELECT語句的三種形式及各種限定,基本表的聯(lián)接操作,SQL中的遞歸查詢。
(4)SQL的數(shù)據(jù)更新:插入、刪除和修改語句。(5)視圖的創(chuàng)建和撤銷,對(duì)視圖更新操作的限制。
(6)嵌入式SQL:預(yù)處理方式,使用規(guī)定,使用技術(shù),卷游標(biāo),動(dòng)態(tài)SQL語句。
第四章關(guān)系數(shù)據(jù)庫的規(guī)范化設(shè)計(jì)
1.函數(shù)依賴、部分函數(shù)依賴、完全函數(shù)依賴、傳遞依賴2.1NF、2NF、3NF、BCNF模式的分解
關(guān)系模式的分解需要遵循兩個(gè)主要原則:
1.滿足無損連接分解的要求。
2.既要滿足無損連接分解的要求,又要滿足保持函數(shù)依賴無損分解的測(cè)試方法
算法4.3無損分解的測(cè)試的算法:如何判斷是否是無損分解構(gòu)造一張k行n列的表格,每列對(duì)應(yīng)一個(gè)屬性Aj(1≤j≤n),每行對(duì)應(yīng)一個(gè)模式Ri(1≤i≤k)。如果Aj在Ri中,那么在表格的第i行第j列處填上符號(hào)aj,否則填上bij。
把表格看成模式R的一個(gè)關(guān)系,反復(fù)檢查F中每個(gè)FD在表格中是否成立,若不成立,則修改表格中的值。修改方法如下:對(duì)于F中一個(gè)FDX→Y,如果表格中有兩行在X值上相等,在Y值上不相等,那么把這兩行在Y值上也改成相等的值。如果Y值中有一個(gè)是aj,那么另一個(gè)也改成aj;如果沒有aj,那么用其中一個(gè)bij替換另一個(gè)值(盡量把下標(biāo)ij改成較小的數(shù))。一直到表格不能修改為止。(這個(gè)過程稱為chase過程)
若修改的最后一張表格中有一行是全a,即a1a2…an,那么稱ρ相對(duì)于F是無損分解,否則稱損失分解。無損分解的測(cè)試方法第一范式(1NF)1NF的定義如果一個(gè)關(guān)系模式R的所有屬性都是不可分的基本數(shù)據(jù)項(xiàng),則R∈1NF即不能以集合、序列等作為屬性值。第一范式是對(duì)關(guān)系模式的最起碼的要求。不滿足第一范式的數(shù)據(jù)庫模式不能稱為關(guān)系數(shù)據(jù)庫但是滿足第一范式的關(guān)系模式并不一定是一個(gè)好的關(guān)系模式第二范式(2NF)
(回顧)定義4.14對(duì)于FDW→A,如果存在XW有X→A成立,那么稱W→A是局部依賴(A局部依賴于W);否則稱W→A是完全依賴。完全依賴也稱為“左部不可約依賴”。(回顧)定義4.15如果A是關(guān)系模式R的候選鍵中屬性,那么稱A是R的主屬性;否則稱A是R的非主屬性。
定義4.16如果關(guān)系模式R是1NF,且每個(gè)非主屬性完全函數(shù)依賴于候選鍵,那么稱R是第二范式(2NF)的模式。如果數(shù)據(jù)庫模式中每個(gè)關(guān)系模式都是2NF,則稱數(shù)據(jù)庫模式為2NF的數(shù)據(jù)庫模式。第三范式(3NF)
(回顧)定義4.17如果X→Y,Y→A,且Y→X和A∈Y,那么稱X→A是傳遞依賴(A傳遞依賴于X)。
定義4.18如果關(guān)系模式R是1NF,且每個(gè)非主屬性都不傳遞依賴于R的候選鍵,那么稱R是第三范式(3NF)的模式。如果數(shù)據(jù)庫模式中每個(gè)關(guān)系模式都是3NF,則稱其為3NF的數(shù)據(jù)庫模式。
將2NF的關(guān)系模式規(guī)范化為3NF的關(guān)系模式,其方法是消除2NF的關(guān)系
模式中非鍵屬性對(duì)鍵的傳遞依賴。
本章重要概念
(1)關(guān)系模式的冗余和異常問題。
(2)FD的定義、邏輯蘊(yùn)涵、閉包、推理規(guī)則、與關(guān)鍵碼的聯(lián)系;平凡的FD;屬性集的閉包;推理規(guī)則的正確性和完備性;FD集的等價(jià)。
(3)無損分解的定義、性質(zhì)、測(cè)試;保持依賴集的分解。
(4)關(guān)系模式的范式:1NF,2NF,3NF,BCNF。分解成2NF、3NF模式集的算法。
第五章數(shù)據(jù)庫設(shè)計(jì)
1.數(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ù)2.需求分析:
數(shù)據(jù)字典:數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和處理過程3.概念結(jié)構(gòu)設(shè)計(jì)
(1)是整個(gè)數(shù)據(jù)庫設(shè)計(jì)的關(guān)鍵,它通過對(duì)用戶需求進(jìn)行綜合、歸納與抽象,形成一個(gè)獨(dú)立于具體DBMS的概念模型(2)E-R圖:基本表示方法4.邏輯結(jié)構(gòu)設(shè)計(jì)
是將概念結(jié)構(gòu)轉(zhuǎn)換為某個(gè)DBMS所支持的數(shù)據(jù)模型,并對(duì)其進(jìn)行優(yōu)化5.物理設(shè)計(jì)
(1)為邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)(包括存儲(chǔ)結(jié)構(gòu)和存取方法)6.實(shí)施階段
設(shè)計(jì)人員運(yùn)用DBMS提供的數(shù)據(jù)語言及其宿主語言,建立數(shù)據(jù)庫,編制與調(diào)試程序,組織數(shù)據(jù)入庫,并進(jìn)行試運(yùn)行7.運(yùn)行和維護(hù)階段
數(shù)據(jù)庫應(yīng)用系統(tǒng)經(jīng)過試運(yùn)行后即可投入正式運(yùn)行。重構(gòu),重組織本章重要概念
(1)DBS生存期及其7個(gè)階段的任務(wù)和工作,DBD過程的輸入和輸出。(2)概念設(shè)計(jì)的重要性、主要步驟。邏輯設(shè)計(jì)階段的主要步驟。
(3)ER模型的基本元素,屬性的分類,聯(lián)系的元數(shù)、連通詞、基數(shù)。采用ER方法的概念設(shè)計(jì)步驟。
(4)ER模型到關(guān)系模型的轉(zhuǎn)換規(guī)則。采用ER方法的邏輯設(shè)計(jì)步驟。(5)ER模型的擴(kuò)充:弱實(shí)體,超類和子類。
第七章系統(tǒng)實(shí)現(xiàn)技術(shù)
1.事務(wù)(1)概念
(2)特性:原子性、一致性、隔離性、持續(xù)性2.故障種類事務(wù)
內(nèi)部的故障、系統(tǒng)故障、介質(zhì)故障3.恢復(fù)的實(shí)現(xiàn)技術(shù)
(1)數(shù)據(jù)轉(zhuǎn)儲(chǔ):轉(zhuǎn)儲(chǔ)狀態(tài)、轉(zhuǎn)儲(chǔ)方式
(2)日志:基本格式和內(nèi)容、日志的作用、登記日志文件并發(fā)控制
1.問題:丟失修改、不可重復(fù)讀、讀“臟”數(shù)據(jù)2.封鎖共享鎖、排它鎖3.一級(jí)封鎖協(xié)議
(1)事務(wù)T在修改數(shù)據(jù)R之前必須先對(duì)其加X鎖,直到事務(wù)結(jié)束才釋放(2)解決的問題:防止丟失修改4.二級(jí)封鎖協(xié)議
(1)一級(jí)封鎖協(xié)議加上事務(wù)T在讀取數(shù)據(jù)R前必須先對(duì)其加S鎖,讀完后即可釋放S鎖(2)解決的問題:防止丟失修改、防止讀“臟”數(shù)據(jù)5.三級(jí)封鎖協(xié)議
(1)一級(jí)封鎖協(xié)議加上事務(wù)T在讀取數(shù)據(jù)R前必須先對(duì)其加S鎖,直到事務(wù)結(jié)束才釋放。(2)解決的問題:防止丟失修改、防止讀“臟”數(shù)據(jù)、防止不可重復(fù)讀6.活鎖和死鎖
(1)死鎖的預(yù)防:一次封鎖法,順序封鎖法(2)死鎖的診斷:超時(shí)法,等待圖法(3)死鎖的解除:選擇一個(gè)處理死鎖代價(jià)最小的事務(wù),將其撤消,釋放此事務(wù)持有的所有鎖,使其它事務(wù)得以繼續(xù)進(jìn)行下去。本章重要概念
事務(wù)的定義,COMMIT和ROLLBACK的語義,事務(wù)的ACID性質(zhì)
恢復(fù)的定義、基本原則和實(shí)現(xiàn)方法,故障的類型,檢查點(diǎn)技術(shù),REDO和UNDO操作,運(yùn)行記錄優(yōu)先原則。
并發(fā)操作帶來的三個(gè)問題,X鎖、S鎖、活鎖、餓死和死鎖
完整性的定義,完整性子系統(tǒng)的功能,完整性規(guī)則的組成。SQL中的三大類完整性約束,SQL3中的觸發(fā)器技術(shù)。
安全性的定義、級(jí)別,權(quán)限,SQL中的安全性機(jī)制,幾種常用的安全性措施,自然環(huán)境的安全性。
友情提示:本文中關(guān)于《數(shù)據(jù)庫每章知識(shí)點(diǎn)總結(jié)》給出的范例僅供您參考拓展思維使用,數(shù)據(jù)庫每章知識(shí)點(diǎn)總結(jié):該篇文章建議您自主創(chuàng)作。
來源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問題,請(qǐng)聯(lián)系我們及時(shí)刪除。