资料库系统DatabaseSystem.ppt
《资料库系统DatabaseSystem.ppt》由会员分享,可在线阅读,更多相关《资料库系统DatabaseSystem.ppt(98页珍藏版)》请在三一办公上搜索。
1、資料庫系統,1,資料庫系統Database Systems,Introduction主講人:劉佳灝,資料庫系統,2,相關名詞,資料庫(database)集合的特性資料庫系統資料庫管理系統(database management systems),資料庫系統,3,資料庫,資料庫(DB)資料庫是相關資料的集合集合的特性集合中的元素沒有順序性集合中的元素不會重複集合可以是空的,資料庫系統,4,資料庫管理系統,資料庫管理系統(DBMS)是許多程式的集合,讓使用者得以定義、建構,與處理資料庫定義:資料的型態、結構與限制建構:在DBMS的控制下,將資料儲存到媒體處理:查詢、更新,資料庫系統,5,資料庫系統
2、,使用者,SQL查詢/應用程式,資料庫管理系統,儲存綱要,儲存資料庫,資料庫系統,6,資料庫系統Database Systems,Database System Concepts,資料庫系統,7,簡介,資料模型(Data Model)是提供資料抽象化的主要工具Data Model 是用來描述資料庫結構的一種概念Data Model的內容包含結構的表示方式限制運算(操作),資料庫系統,8,資料模型 Data Model,Data Model使用的概念實體 Entity屬性 Attribute關係 Relationship,客戶,資料庫系統,9,關聯式資料模型概念 Relational Model
3、 Concepts,關聯式模型將資料庫表示成一個關聯的集合相關名詞關聯(Relation)值組(Tuple)屬性(Attribute)定義域(Domain),資料庫系統,10,Relation Schemas 名詞簡介,PRODUCT,值組,屬性集合,關聯表名稱,顏色屬性,尺寸屬性,品名屬性,價格屬性,品號屬性,主鍵,價格資料,資料庫系統,11,Relation Schemas 特性與內容,關聯表的屬性數目稱為它的維度一個關聯表中任兩個屬性名稱不可以重覆關聯表綱要(Relation Schema)包含:關聯表名稱屬性集宣告所有屬性的相對資料型態宣告主鍵的宣告外來鍵(Foreign Key)之宣
4、告,資料庫系統,12,DBMS的架構與資料獨立,Three Schema(三綱要架構)外層(景觀層)External Level:外部綱要概念層 Conceptual Level:慨念綱要內層 Internal Level:內部綱要資料獨立邏輯資料獨立實體資料獨立,資料庫系統,13,Three Schema,外層(又稱為景觀層)External Level:外部綱要描述特定使用者所感興趣的資料庫部分隱藏儲存結構等其他細節概念層 Conceptual Level:慨念綱要描述整個資料庫的結構隱藏儲存等細節著重在實體、資料型態、關係、使用者的操作與限制內層Internal Level:內部綱要用來
5、描述資料庫的實際儲存結構與路徑,資料庫系統,14,Data Independence 資料獨立,Logical data independence(邏輯資料獨立)改變 conceptual schema 時,不需改變 external schema(or application)Physical data independence(實體資料獨立)改變 internal schema 時,不需改變 conceptual schema,資料庫系統,15,SQL,DDL 資料定義語言用來定義 concept schema與資料庫綱要之定義有關的操作,如資料庫的建立、表格的建立等命令DML 資料處理語
6、言對資料庫資料進行擷取、新增、刪除與修改等處理之命令僅對資料有所影響,與資料庫綱要定義無關,資料庫系統,16,資料庫系統Database Systems,Modeling Using the Entity-Relationship Approach,資料庫系統,17,屬性型態,簡單(Simple)複合(Composite)單值(Single-valued)多值(Multi-valued)儲存(Stored)導出(Derived),資料庫系統,18,屬性型態,簡單(simple)與 複合(composite),姓,名,生日,地址,員工編號,電話,薪資,員工,姓名,資料庫系統,19,地址,里別,隣
7、號,郵遞區號,路別,縣市別,里隣,應該是簡單還是複合屬性?,資料庫系統,20,屬性型態,單值(single-valued)與多值(multi-valued)Ex:一個部門只有一個部門編號與部門名稱,某些部門可能存同時在兩個地點(例如:一個部門分別在 台中 與 彰化 各有據點),部門,名稱,部門編號,地點,資料庫系統,21,屬性型態,儲存(stored)與 導出(derived)Ex:年紀可以經由生日換算得到,姓名,姓,名,生日,地址,員工編號,電話,薪資,員工,年紀,資料庫系統,22,屬性型態(範例二),Ex:一個客戶的交易次數可以經由訂購紀錄中計算出來,客戶,編號,交易次數,姓名,電話,商品
8、,編號,名稱,價格,日期,交易量,訂購,資料庫系統,23,鍵值屬性,一個具有唯一性的屬性 假設:每一個客戶的編號會唯一每一個商品的編號會唯一,且每一商品的名稱也會唯一,客戶,編號,交易次數,姓名,電話,商品,編號,名稱,價格,日期,交易量,訂購,資料庫系統,24,實體,關係,屬性,實體型態具有相同屬性集合的元素所形成的集合關係型態用來連接某些相關的實體型態屬性可以用來描述實體或關係,學生,學號,姓名,性別,課程,編號,名稱,教師,日期,成績,選修,資料庫系統,25,關係,關係型態的Degree是參與此關係的實體型態數目Ex:Works_for的Degree為2,又稱二元關係,Relations
9、hip,資料庫系統,26,關係型態的限制,Constraints on Relationship Types基數率與參與基數率一個實體所能參與的關係案例數Ex:一個部門僅會有一個主管參與Ex:任何一個部門一定有一個主管(去管理它),資料庫系統,27,基數率(cardinality ratio),1:1的範例,員工,部門,管理,e1e2e3e4,d1 d2d3,r1r2r3,資料庫系統,28,基數率,1:N的範例,員工,部門,屬於,e1e2e3e4,d1 d2d3,r1r2r3r4,資料庫系統,29,基數率,N:M的範例,員工,專案,參與,e1e2e3e4,P1 p2p3,r1r2r3r4r5r
10、6,資料庫系統,30,參與限制,實體的存在是否依靠關係型態與另一實體產生關聯來決定部份參與(以單線表示)全部參與(以雙線表示),員工,部門,管理,部份參與,全部參與,資料庫系統,31,參與限制(範例二),課程實體的存在是否依靠開設關係型態與另一教師實體產生關聯來決定課程實體要存在必須所對應的教師實體與開設關係都存在,該課程才會存在任何一個課程一定要有教師去開設它,教師,課程,開設,部份參與,全部參與,資料庫系統,32,弱實體型態(Weak Entity Type),Weak Entity Types 本身可以沒有任何的鍵值屬性透過另一實體型態的一些屬性所組成的相關特定實體(Identifyin
11、g Owner)來辨認辨認關係(Identifying Relationship)Weak Entity在沒有Identifying Owner 的狀況下是無法辨認的,所以Weak Entity 總是有一個完全參與的限制來與它的辨認關係產生關聯,資料庫系統,33,姓名,生日,性別,關係,Weak entity,Identifying relationship,員工,眷屬,擁有,全部參與,Identifying owner,員工編號,弱實體型態(Weak Entity Type),資料庫系統,34,適當名稱,大寫字母表示實體與關係型態屬性名稱字首大寫實體多使用名詞關係則採用動詞方向:由左到右,由
12、上到下,資料庫系統,35,範例:讀者借閱書籍,系統必須紀錄讀者的身份證號碼、姓名、生日,與聯絡方式,其中聯絡方式包含了電話與地址資料系統紀錄了館藏中每一本書籍的書名與作者,雖然有些書籍有兩個以上的作者,但一定都只有一個唯一書號.為了掌握每本書的熱門程度,系統必須提供每本書籍的曾經被借閱的次數,以提供讀者參考當一個讀者要借閱書籍時,系統必須紀錄借閱的日期,以便管理.而每一位讀者至少都有借閱過一次以上書籍的紀錄,資料庫系統,36,範例:讀者借閱書籍,讀者,書籍,借閱,身份證號碼,生日,聯絡方式,電話,地址,姓名,書名,書號,作者,借閱次數,日期,作者,資料庫系統,37,資料庫系統Database
13、Systems,Relational Database Constraints,資料庫系統,38,關聯式資料模型的限制,定義域限制鍵值限制實體完整性限制參考完整性限制,資料庫系統,39,屬性與定義域(Domain),欄位中所允許的數值(Value)資料稱為定義域(Domain)定義域D是基元(Atomic)數值資料的集合Domain中的數值是不可分割個所以稱為基元Dom(Sex)=男生,女生 則”男生”與”女生”皆為sex屬性的的合理基元值Ex:age:大於0的整數ID_numbers:一個英文字母加上九位數字的集合年級:介於14之間的數值,資料庫系統,40,定義域限制,定義域限制指定了一屬性
14、A的值必須在該屬性值的定義域Dom(A)裡的一個基元值定義方式列舉範圍格式資料型態,資料庫系統,41,鍵值限制,關聯可視為一個集合,所含值組必須相異t1SK t2SKSK:超鍵(superkey)每個關聯至少存在一個SK,資料庫系統,42,包含SK的屬性集合亦為SK,Ex:Sid是一SK,所以包含Sid的屬性集合皆為SKName,Sid、Sid,Tel_num、Sid,Name,Age鍵值屬性可以用來確認關聯中的唯一的值組鍵值是由關聯綱要中屬性的意義來決定,資料庫系統,43,主鍵(Primary Key)的產生,鍵值是一個最小的SuperKey若有一個以上的鍵值,則每一個鍵值都稱為是一個候選鍵
15、(Candidate Key)必須從Candidate Key中選擇一個作為主鍵(Primary Key)主鍵的特性唯一性最小性,資料庫系統,44,關聯式資料模型的限制,定義域限制鍵值限制實體完整性限制參考完整性限制,與關聯中的主鍵(PK)有關,資料庫系統,45,鍵值限制與實體完整性,鍵值限制(Key Constraint)主鍵值不能重複實體完整性(Entity Integrity Constraint)主鍵值不能有空值,資料庫系統,46,參考完整性,若一個關聯滿足定義域限制、鍵值限制、與實體完整性限制,我們只也能相信個別的關聯本身是合理的,但並無法保證關聯與關聯之間的資料狀態是一致的參考完整
16、性限制是指定在兩個關聯之間,用以維持兩個關聯值組的一致性,資料庫系統,47,外鍵與參考,R1的外鍵FK(Foreign Key)FK的屬性與另一關聯綱要R2的Primary Key有相同的定義域(FK 參考R2)R1的值組t1中的FK可以和R2的某一值組t2 的PK相符,或是空值t1FK=t2PK,資料庫系統,48,參考完整性,FK的屬性值必須在所參考之關聯的PK屬性中被找到,或者為Null關聯式資料庫之參考完整性限制,藉由FK與PK間的參考關係,以達到關聯表之間的一致性,資料庫系統,49,EMPLOYEE.Dno 與 DEPARTMENT.Dnum 之間的一致性,EMPLOYEE,DEPAR
17、TMENT,資料庫系統,50,若一員工不屬任何部門時,EMPLOYEE.Dno 可以是空值,EMPLOYEE,DEPARTMENT,資料庫系統,51,限制的實作,使用DDL指定限制,create table orders(no int not null,id int not null,quantity int,odate datetime default getdate(),/*以系統日期及時間為odate的初值*/primary key(no,id,odate),/*宣告複合欄位(no,id,odate)為主鍵*/foreign key(no)references bookstores,fo
18、reign key(id)references books,check(quantity0 and quantity5001)/*設定quantity值的限制條件*/,資料庫系統,52,資料庫系統Database Systems,Functional Dependencies and Normalization,資料庫系統,53,重要觀念,良好的語意減少tuple的重複值減少tuple的空值不允許假值組(Spurious Tuples)的存在,資料庫系統,54,語意設計上的優劣,設計易於解釋的Schema一個實體僅描述單一意義,勿結合多個於一關聯不良的設計,EMP_DEPT,資料庫系統,55,
19、tuple的重複值問題,EMP_DEPT,資料庫系統,56,減少tuple的空值,資料庫系統,57,不允許假值組的存在,適當地分割關聯可以有效減少空間的浪費,並藉由正規化與關聯式運算(處理)來維持資料的完整性並滿足各項操作假值組的問題,係因不良的關聯表格切割所導致關聯表的分割必須考量FK與PK,資料庫系統,58,我們可以由 分割成,但無法由回覆成原來的,資料庫系統,59,Functional Dependencies,功能相依是資料庫的兩個屬性集合的限制關聯表分割的重要參考依據表示法(XY)與意義Relation R 中的任意兩個tuples t1與t2,若t1X=t2X,則使得t1Y=t2Y
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 资料库 系统 DatabaseSystem
链接地址:https://www.31ppt.com/p-4947363.html