轉(zhuǎn)載:
名詞積累:
數(shù)據(jù)庫():存放和提供數(shù)據(jù)的“庫房”
數(shù)據(jù)(Data):數(shù)據(jù)庫中存儲的基本對象。
數(shù)據(jù)庫管理系統(tǒng)(DBMS):位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件。
數(shù)據(jù)庫系統(tǒng)( ):包括數(shù)據(jù)庫、DBMS、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員(DBA)
主鍵( Key):用于唯一的標識表中的某一條記錄的屬性或?qū)傩缘募稀?/p>
外鍵( Key):用于與另一張表關(guān)聯(lián),外鍵為另一張表的主鍵
超鍵(Super Key):超鍵是能唯一區(qū)分元組的屬性或?qū)傩缘募?/p>
鍵(候選鍵):去掉了超鍵中多余的屬性,仍然能夠保證區(qū)分不同的元組。
模式():一個數(shù)據(jù)庫的描述,包括對數(shù)據(jù)庫結(jié)構(gòu),數(shù)據(jù)類型,還有約束。
實例( / State):數(shù)據(jù)庫中在某一時刻存儲的真實的數(shù)據(jù)。(是在某一時刻的具體化、實例化)
數(shù)據(jù)操縱語言(DML:Data ):增刪改查
數(shù)據(jù)定義語言(DDL:Data ):定義、刪除、修改數(shù)據(jù)庫中的對象
數(shù)據(jù)控制語言(DCL:Data ):用于控制用戶對數(shù)據(jù)庫操縱的權(quán)限
數(shù)據(jù)模型(Data Model):現(xiàn)實世界數(shù)據(jù)特征的抽象,用來定義數(shù)據(jù)如何組織,數(shù)據(jù)之間的關(guān)系怎樣
并相容性(Union ):兩個關(guān)系具有并相容性需要保證具有相同的屬性個數(shù),以及對于每個屬性都有相同的域
視圖(VIEW):視圖是虛擬的表,并不是物理存儲的數(shù)據(jù)。而是由基本表或其他視圖派生的數(shù)據(jù)。對視圖的更新,實際上轉(zhuǎn)換為對實際基表的更新。
數(shù)據(jù)模型(Data Model):
基本概念:現(xiàn)實世界數(shù)據(jù)特征的抽象,用來定義數(shù)據(jù)如何組織,數(shù)據(jù)之間的關(guān)系怎樣。
層次:
1.概念模型():按用戶的觀點來對數(shù)據(jù)和信息建模
2.邏輯/實現(xiàn)模型( / ):層次模型數(shù)據(jù)庫原理及應(yīng)用知識點總結(jié),網(wǎng)狀模型,關(guān)系模型
3.物理模型():數(shù)據(jù)在具體DBMS產(chǎn)品中的物理儲存方式
數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu):
1.內(nèi)模式( ):(也稱存儲模式。)數(shù)據(jù)物理結(jié)構(gòu)和儲存方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫內(nèi)部的表示方式
2.概念模式( ):(也稱全局模式。)有時簡稱“模式”。是對數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述
3.外模式( ):(也稱子模式或者用戶模式。)數(shù)據(jù)庫用戶能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述
數(shù)據(jù)庫系統(tǒng)的兩級映射以及物理、邏輯獨立性:
兩級映射:
1.概念模式/內(nèi)模式映射
2.外模式/概念模式映射
數(shù)據(jù)的物理獨立性:
內(nèi)模式與概念模式之間的映射提供了數(shù)據(jù)的物理獨立性。當(dāng)數(shù)據(jù)的物理結(jié)構(gòu)發(fā)生變化時,只需要修改內(nèi)模式與概念模式之間的映射即可。
數(shù)據(jù)的邏輯獨立性:
概念模式與外模式之間的映射提供了數(shù)據(jù)的邏輯獨立性。當(dāng)數(shù)據(jù)的整體邏輯結(jié)構(gòu)發(fā)生變化時,只需要修改各個外模式與概念模式之間的映射即可保證應(yīng)用程序不受影響。
數(shù)據(jù)的約束條件:完整性約束
1. 域約束:對屬性取值范圍的約束
2. 鍵約束:每個關(guān)系必須要有主鍵,且每個主鍵必須不相同
3. 非空約束:屬性值不能為NULL
4. 實體完整性約束:主鍵值不能為空
5. 參照完整性約束:外鍵可以取NULL值,但若外鍵為另一關(guān)系主鍵,則不能為NULL。
6. 用戶定義的完整性
各種數(shù)據(jù)操作可能違反的完整性約束
插入操作:域約束、鍵約束、非空約束、實體完整性約束、參照完整性約束
刪除操作:參照完整性約束
更新操作:域約束、鍵約束、非空約束、實體完整性約束、參照完整性約束
SQL語句執(zhí)行順序:
1. FROM子句組裝來自不同數(shù)據(jù)源的數(shù)據(jù)
2. WHERE子句基于指定的條件對記錄進行篩選
3. GROUP BY子句將數(shù)據(jù)劃分為多個分組
4. 使用聚集函數(shù)進行計算
5. 使用子句篩選分組
6. 計算所有的表達式
7. 使用ORDER BY對結(jié)果集進行排序
控制冗余( )與非控制冗余( )的區(qū)別:
未受控制的數(shù)據(jù)存儲冗余會導(dǎo)致如下的問題:
1. 更新數(shù)據(jù)時的重復(fù)工作
2. 浪費空間
3. 數(shù)據(jù)可能會不一致
因此,理想情況下,我們應(yīng)該設(shè)計一個沒有冗余的數(shù)據(jù)庫數(shù)據(jù)庫原理及應(yīng)用知識點總結(jié),但是有時候我們需要提高查詢的效率,因此我們引入了控制冗余( )
例如:
我們將學(xué)生名和課程號冗余存儲于表中,因為查詢成績的時候我們需要同時查詢學(xué)生姓名以及課程號。
關(guān)系()與文件(files)或表()的不同:
關(guān)系看上去像一張二維表
關(guān)系的域(屬性的取值范圍)為一組原子值(不可再分割的值)
關(guān)系中的元組必須各不相同
關(guān)系代數(shù):
五種基本運算:并、差、笛卡爾積、選擇、投影
關(guān)系代數(shù)解釋器:關(guān)系代數(shù)解釋器(模擬關(guān)系代數(shù))
內(nèi)連接的種類:
1. 等值連接
2. 不等連接
3. 自然連接
SQL語句:
表結(jié)構(gòu)的復(fù)制(不包含表之間的關(guān)系)
* INTO FROM WHERE 1=0;
三值謂詞邏輯:
1. TRUE
2. FALSE
3.
只有在比較結(jié)果為TRUE是才確定為真,e.g. (TRUE與交為, 此元組不會出現(xiàn)在結(jié)果中)
數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計的基本過程:
of (數(shù)據(jù)庫設(shè)計的基本過程)
Phase 1:ons and (需求收集與分析)
Phase 2: (概念結(jié)構(gòu)設(shè)計)
Phase 3: of a DBMS(選擇合適的DBMS)
Phase 4:Data Model ( )(邏輯結(jié)構(gòu)設(shè)計)
Phase 5: (物理結(jié)構(gòu)設(shè)計)
Phase 6: (數(shù)據(jù)庫實施)
Phase 7: and (數(shù)據(jù)庫運行和維護)
ER圖符號解釋:
將ER模型映射成邏輯模型的步驟:
1. 映射強實體型
2. 映射弱實體型
3. 映射1 : 1 二元聯(lián)系型
4. 映射1 : N 二元聯(lián)系型
5. 映射M : N二元聯(lián)系型
6. 映射多值屬性
7. 映射N元聯(lián)系
數(shù)據(jù)庫范式:
1NF(First Form):當(dāng)且僅當(dāng)所有域只包含原子值,即每個分量都是不可再分的數(shù)據(jù)項,則稱實體E滿足第一范式
2NF( Form):當(dāng)且僅當(dāng)實體E滿足第一范式,且每一個非鍵屬性完全依賴主鍵時,滿足第二范式
3NF(Third Form):當(dāng)且僅當(dāng)實體E是第二范式(2NF),且E中沒有非主屬性傳遞依賴時,滿足第三范式