# 資料庫系統概論— 設計與應用開發篇(1) ## 一.關係數據理論 主要是關係中**屬性和屬性之間的依賴關係** ### 1相關基本概念 - **第一範式**:表中無表(屬性不可再分) - 數據依賴:是在一個關係內部屬性間的約束,分為函數和多值依賴。 eg:學號決定姓名 ### 2.規範化 ### ...
資料庫系統概論— 設計與應用開發篇(1)
一.關係數據理論
主要是關係中屬性和屬性之間的依賴關係
1相關基本概念
- 第一範式:表中無表(屬性不可再分)
- 數據依賴:是在一個關係內部屬性間的約束,分為函數和多值依賴。 eg:學號決定姓名
2.規範化
2.1函數依賴
與數學中函數概念相似,一個X只能對應一個Y。記作X->Y
- 非平凡函數依賴:X->Y,但Y不屬於X
- 平凡函數依賴:X->Y,但Y屬於X(一般不討論)
- 等價:X->Y且Y->X(可以相互替換)
- 完全函數依賴:在X->Y的前提下,只有X的全集可以->Y
- 部分函數依賴:在X->Y的前提下,X的子集可以->Y
2.2碼(主碼或是候選碼)
- 候選碼:可以確定一個元組(包括除候選碼的所有屬性)的屬性/屬性組
- 主碼:若有多個候選碼,隨便選一個當主碼
- 主屬性:在候選碼中的屬性
如何找候選碼
只出現在左邊->一定是候選碼
只出現在右邊->一定不是是候選碼
左右都不出現->一定是候選碼
左右都出現->不一定是候選碼
選擇出一定是候選碼的集合後,依次添加可能是候選碼的選項,看是否能夠推出所有的屬性
2.3範式
2.4第二範式
在第一範式的基礎上,每一個非主屬性完全依賴任何一個候選碼,若候選碼是一個屬性,則必滿足第二範式
2.5第三範式
在第二範式基礎上,其非主屬性沒有傳遞關係,若無非主屬性,則比滿足第三範式
2.6BC範式
在第三範式的基礎上,其決定因數中一定有碼。實現了函數範圍內的徹底分解。
二、資料庫設計
1.設計概述
資料庫設計包括信息管理要求和數據操作要求
1.1設計特點
三分技術,七分管理,十二分基礎數據
結構(數據)設計和行為(處理)設計相結合
1.2設計基礎步驟
2.需求分析
需求分析是設計資料庫的起點
3.概念結構設計
3.1E-R圖
實體,屬性,聯繫三要素
eg:
3.2E-R圖轉換
一個實體一個單獨的表
一對一的聯繫:將一端的主碼放入另一個關係中並加聯繫的屬性
一對多的聯繫:將1的主段放入多端的的關係中,並加聯繫的屬性
多對多的聯繫:建新表,兩端的主碼並加聯繫的屬性
相互聯繫的實體大於2,則另建新表,各自的主碼加聯繫的屬性