按一下以編輯母片標題樣式,*,按一下以編輯母片,第二層,第三層,第四層,第五層,No.6,資料庫系統設計,溫丹瑋,marian_,10/29/2004,No.6 資料庫系統設計溫丹瑋 marian_wengm,1,何為關聯式資料庫系統,“,關聯,”(Relationship),:藉由表格的形式找出資料的方法,關聯,必須經由二個資料表中相同的意義及資料類型的欄位來實現,(,欄位名稱不一定要相同,),何為關聯式資料庫系統“關聯”(Relationship),2,分割資料表並建立關聯的優點,節省儲存空間,減少輸入錯誤,方便資料修改,分割資料表並建立關聯的優點節省儲存空間,3,主鍵及連外鍵,通常每個資料表只有一個欄位設定為主鍵,,但有時可能沒有一個欄位具有唯一性,,,此時可考慮使用兩個或多個欄位組合起來做為主鍵。,連外鍵,:連結其他資料表之用,主鍵及連外鍵通常每個資料表只有一個欄位設定為主鍵,但有時可,4,資料的完整性,資料完整性,(Data Integrity),:用來確保資料庫中資料的正確性及可靠性。,實體完整性,(Entity Integrity),:為了確保資料表中的記錄是,“,唯一,”,的。我們設定主鍵就是為了達成,實體完整性,區域完整性,(Domain Integrity),:,是為了確保資料在允許的範圍中,參考完整性,(Referential Integrity),:用來確保相關資料表間的資料一致,。,資料的完整性資料完整性(Data Integrity):用,5,資料表的關聯種類,一對一關聯,一對多關聯,多對多關聯,資料表的關聯種類一對一關聯,6,Access,中關聯的表示方式,在,Access,中,若建立資料表關聯時若未建立,強迫參考完整性,則不論一對一或一對多的關聯,都會以下圖的方式表示:,Access 中關聯的表示方式在 Access 中,若建立,7,Access,中關聯的表示方式,請雙按關聯,開啟,編輯關聯,交談窗:,Access 中關聯的表示方式請雙按關聯,開啟編輯關聯交談,8,Access,中關聯的表示方式,當建立了參考完整性後,在關聯上就會明確標示出兩個資料表間的關聯類型:,練習建立資料庫的關聯,Access 中關聯的表示方式當建立了參考完整性後,在關聯,9,如何設計一個完善的資料庫,操作介面設計,:就,Access,而言,操作介面設計就是表單的設計,或是以程式語言 所撰寫的操作介面。,結構設計,:結構設計是指設計出適當且最佳化的資料表。,如何設計一個完善的資料庫操作介面設計:就 Access 而言,10,系統分析的步驟,(1),了解客戶需求,針對客戶需求,確定設計範圍,收集和分析資料,概念設計階段,將收集的資料,經過分析及整理後,產生一個能符合使用者需求的資料庫模型,並以簡單的形式表現出來,系統分析的步驟(1)了解客戶需求,11,系統分析的步驟,(2),邏輯設計階段,主要工作是將概念設計階段產生的結果,轉換為實際使用的資料表,此階段的工作可分為,轉換為資料表,及,資料表正規化,等兩項,建立資料庫,接著要將結果建到資料庫中,系統分析的步驟(2)邏輯設計階段,12,ERD,的目的,ERD,的目的是用來描述資料儲存裡紀錄間的關係。,ERD,的功能,系統發展人員與資料庫管理師(,DBA,)的溝通工具。,利用,ERD,描述資料需求,最後再轉換成實際的檔案。,用來檢驗資料流程圖中的檔案是否正確。,ERD,的目的及功能,ERD的目的ERD的目的及功能,13,6,5,4,3,2,1,編號,意義,實體名稱,屬性名稱,圖示,一般實體,一般關係,屬性,弱勢實體,實體名稱,多值屬性,屬性名稱,弱勢關係,ERD,的組成元件,654321編號意義實體名稱屬性名稱圖示一般實體一般關係屬性,14,所謂實體就是系統中必須儲存的資料。,實體可分為一般實體及弱勢實體兩種,在這裡須注意的是,弱勢實體的存在與否,是取決於某個一般實體,即當它所依賴的實體不復存在,時,則該弱勢實體也不復存在。,一般實體的圖形符號為一單框長方形,如表2.2之編號(1)所示。,弱勢實體的圖形符號則以雙框長方形符號來表示之,如表2.2之編號(2)所示。,實體,實體,所謂實體就是系統中必須儲存的資料。實體實體,15,屬性,屬性的符號以橢圓形代表之,如表,2.2,之編號(,3,)所示。,屬性代表實體的一個性質,對應到資料記錄裡的一個欄位。,主鍵(,Primary Key,PK,):在屬性中畫上底線,表為唯一識別值且不能為空值,(Null),。,複合屬性:該屬性的每一個部份都要再細分為另一個屬性,並與原來 的複合屬性連接。,多值屬性:則以雙框橢圓形表示之,其就是把多個相同屬性之屬性內容綜合起來,屬性的符號如表,2.2,之編號(,4,)。,屬性屬性的符號以橢圓形代表之,如表2.2之編號(3)所示。,16,學生,學號,家屬:姓名,家屬:年齡,家屬:關係,相,等,於,圖,2.4,多值屬性,N,學生,學號,家屬,家屬:關係,家屬:年齡,家屬:姓名,範例如下圖,2.4,所示:,學生學號家屬:姓名相圖2.4 多值屬性N學生學號家屬家屬:,17,關係,關係代表實體,(,型別,),的案例與實體,(,型別,),的案例之間的關係,或資料記,錄與資料記錄間之關聯。,簡單來說其就是用來記錄系統中兩個實體間所發生的任何關聯。,一般關係:以單框菱形來表示,如表,2.2,之編號(,5,),弱勢關係:以雙框菱形來表示之,如表,2.2,之編號(,6,)所示,。,範例如下圖,2.5,所示:,老闆,員工,聘用,N,親屬,家屬,N,關係關係代表實體(型別)的案例與實體(型別)的案例之間的關係,18,關係的種類,實體與實體之間的關係可分為:,(1),對,:例如校長與學校兩個實體,它們之間存在對的管理關係,(2),對多,:例如系所與學生兩個實體,它們之間存在對多的註冊關係,(3),多對多,:例如學生與科目兩個實體,它們之間存在多對多的修課關係,校長,學校,管理,系所,學生,註冊,學生,科目,修課,關係的種類實體與實體之間的關係可分為:校長學校管理系所學生,19,ERD,的建立方法與步驟,建立,ERD,時首先要確立實體中的資料項,並確立該實體之鍵,(Key),。所謂的鍵指的是可以唯一決定該實體的資料項。,建立,ERD,的步驟如下:,確定所有的實體及其資料項。,定義實體的鍵。,確立實體間之對應關係。,經由鍵的結合,連接相關的實體及關係。,ERD的建立方法與步驟建立ERD時首先要確立實體中的資料項,,20,關聯物件指標(,Associative Object Type Indicator,),關聯物件指標又可稱為關聯實體指標(,Associative Entity Indicator,),Yourdon,,它除了紀錄兩個實體間的關聯外,也利用一個實體,紀錄了一些關聯以外的其他資訊,而這個紀錄其他資訊的實體,則稱為關聯實體。圖形描述如下圖,2.7,所示:,M,客戶檔,產品檔,購買,時間,數量,關聯物件指標(Associative Object Typ,21,超類別實體指標,它由以下兩類實體組成:,超類別:記錄所有子類別皆必須擁有的資料,如圖,2.7,中的學生類別,子類別:記錄每個子類別個別擁有的資料,如圖,2.7,中的大學部和研究所類別。,其圖形描述如圖,2.8,所示:,學生,大學部,研究所,超類別實體指標它由以下兩類實體組成:學生大學部研究所,22,完整範例,M,M,員工,部門,家屬,工作於,親屬關係,姓名,年齡,關係,代號,名稱,編號,姓名,年齡,圖,2.9,一個完整的實體關係圖,完整範例MM員工部門家屬工作於親屬關係姓名年齡關係代,23,库系统设计,24,