关联式库范例-RFID室课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《关联式库范例-RFID室课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关联 范例 RFID 课件
- 资源描述:
-
1、Chapter 4資料庫規劃與設計12/102大大 綱綱4-1 資料庫設計基礎4-2 資料模型4-3 資料庫設計-實體關係模型4-4 資料庫設計-正規化4-5 實作案例4-6 SQL3/1024-1 4-1 資料庫設計基礎資料庫設計基礎資料庫(Database)是一組相關資料所形成的集合,它是資訊系統中用來儲存資料的地方。資料庫是以電子化的檔案型式存在於系統中,其透過特定的資料模型概念,將資料集合進行組織性的儲存,以提供應用系統的使用。4/102資料庫管理系統資料庫管理系統資料庫管理系統(Database Management System)簡稱為DBMS,它是一套應用軟體系統,是介於使用者與
2、作業系統之間,用來有效管理資料庫。常見的DBMS有SQL Server、Oracle、SyBase等。資料庫管理系統的主要功能資料定義資料處理安全性管理資料庫的維護5/102資料庫系統資料庫系統資料庫系統(Database System)是一套包含資料庫、資料庫管理系統、應用程式,以及使用者在內的系統。一般也將資料庫系統視為是一個包含資料庫功能的資訊系統。使用者SQL查詢/應用程式資料庫管理系統綱要(中繼資料)資料庫6/102資料庫系統相關的人員資料庫系統相關的人員角色角色資料庫系統相關的人員角色資料庫管理員資料庫設計師終端使用者系統分析師與應用程式設計師使用資料庫系統的優點減少大量重覆儲存的
3、資料、減少不一致的資料、資料得以共享、達成資料標準化的目的、加快資料擷取速度、資料具有整合性、達成資料獨立、可利用資料模型來描述複雜的關係、快速備份與回復資料庫、提供不同的視界等。7/1024-2 4-2 資料模型資料模型資料模型是資料庫系統的核心一個資料模型的主要組成資料的表示方式表示方式的合法條件(整合限制條件)資料的操作與運算資料模型1.階層式資料模型2.網路式資料模型3.關聯式資料模型8/1021.1.階層式資料模型階層式資料模型階層式資料模型(Hierarchical Database Model)其結構是採用一個有序集合的樹狀結構。階層式資料模式的整合限制條件為:任何的子節點(Ch
4、ild Node)都必須要有父節點(Parent Node)的存在。階層式資料模型上的資料運算主要是依循樹狀結構(Tree Structure)上的運算原則。階層式資料模型只適合用來描述一對多的關係,但不適合多對多關係的描述。9/1022.2.網路式資料模型網路式資料模型網路式資料庫模型(Network Database Model)在資料的結構上採用網路圖形來連結資料。網路式資料模式的整合限制條件為:除非其父親節點已經存在了,否則任何的孩子節點都不能加入資料庫中。網路式資料模型上的資料運算主要依循圖形(Graph)結構上的運算。由於網路式資料模型在結構上是採用網路(圖形)的型式,因此適合用來
5、描述多對多問題。10/1023.3.關聯式資料模型關聯式資料模型關聯式資料模型的發展,最早是在1970 年代由IBM 公司的研究人員Codd博士首先發展出關聯式資料模型,並於1985 年,對外提出關聯式資料庫管理系統的規則建議。使用關聯式模型為基礎觀念所建立的資料庫管理系統,稱之為關聯式資料庫管理系統關聯式資料模型的組成元素,包含了資料結構、完整性限制條件,以及資料操作或運算等三大元素。11/102關聯(關聯(RelationRelation)關聯也稱為關聯表,形式上就如同是一個表格,是關聯式資料模型所採行的表示結構。關聯是由許多資料值所組成的表格關聯可視為是一組橫列(Row)的集合也可以視為
6、是一組直欄(Column)的集合關聯中的每個直欄亦是一個屬性關聯的屬性數目(即欄位數)稱為此關聯的維度。關聯可視為是經由許多屬性所組成的表格。12/102關聯綱要關聯綱要一個關聯的實體架構稱為關聯綱要建立關聯必須要有:關聯名稱屬性集合(及各屬性的資料型態)主鍵(與外來鍵)13/102範例:範例:Product Product 關聯表關聯表14/102關聯表具備四個性質關聯表具備四個性質關聯表的值組是沒有順序的關聯表的屬性是沒有順序的關聯表中的屬性值是單元值關聯表中不含重複的值組15/102關聯綱要的表示法關聯綱要的表示法16/102限制條件限制條件在關聯式資料模型中的整合限制條件是用來規範資料
7、在關聯表中的儲存、刪除或更改動作,以防止不一致或錯誤的情況發生。關聯式資料模型的整合規則個體整合限制:用來規範關聯內部的限制條件參考整合限制:用來規範關聯與關聯之間的限制條件在關聯式資料模型之中,單一關聯表格所涉及到的限制包含鍵值完整性限制、定義域完整性限制,以及實體完整性限制。17/102鍵值完整性限制:關聯之中,鍵值具有不可為空值(Null Value)的限制。定義域完整性限制:對於不符合期待的值,必須被限制輸入。實體完整性限制:關聯中不會存在兩筆完全相同的值組。參考整合性限制是指定在兩個關聯之間,用以維持兩個關聯值組的一致性。參考整合性限制:外來鍵的屬性值必須在所參考之關聯的主鍵屬性中被
8、找到,或者為Null。18/102關聯式資料庫範例關聯式資料庫範例19/1024-3 4-3 資料庫設計資料庫設計-實體關係模型實體關係模型資料庫設計(Database Design)是指依照一定的程序、方法和技術,使用結構化方式將概念資料模型轉換成資料庫的過程。資料庫設計的階段概念資料庫設計:將資料庫需求轉換成概念資料模型的過程。邏輯資料庫設計:針對特定的資料庫模型來建立邏輯資料模型。實體資料庫設計:將邏輯資料模型轉換成關聯式資料庫管理系統的一系列SQL 指令敘述。20/102實體關係模型實體關係模型實體關係圖經常被使用在概念資料庫設計活動中,用來建立概念資料模型,這種圖形化工具可以描述使用
9、者和設計者眼中的真實世界,作為之間的溝通橋樑。實體關係模型中的實體可以對應關聯式資料庫模型的關聯表,並透過關係來表示外來鍵參考的參考概念,所以關聯式資料庫的邏輯資料庫設計也可以使用實體關係圖建立邏輯資料模型。實體關係模型是一套觀念與圖形符號,主要的組成元件包含:實體、屬性、關係等。21/102範例範例:客戶客戶-訂購訂購-商品的實體關係圖商品的實體關係圖22/1021.1.實體型態與實體實例實體型態與實體實例實體型態(Entity Type)是同一類實體所形成的集合,其圖形符號以矩形表示。例如客戶實體型態可表示為:商品實體型態可表示為:實體型態的實例(Instances),或簡稱為實體或個體2
10、3/1022.2.關係關係型型態與關係實例態與關係實例關係型態(Relationship Types)屬於一種關聯實體型態(Associate Entity Type),其目的是用來連結一、二個或多個相關的實體型態,圖形符號是使用菱形方式表示。關聯型態也可以建立實例,用來表示一個訂購的行為或事件。24/1023.3.屬性屬性屬性(Attributes)在實體關係圖中是以橢圓型圖形符號的表示節點。實體關係圖中的實體型態與關係型態可以擁有許多個屬性。例如:在下圖中,商品實體型態擁有商品編號、商品名稱、顏色,與價格等四個屬性25/102屬性的類型屬性的類型(1)(1)簡單屬性與複合屬性簡單屬性與複合
11、屬性若一屬性的形成由許多屬性所共同構成,亦即此一屬性可以被往下進行分割,切割成數個細微的屬性,則稱之為複合屬性。如下圖中的姓名屬性。簡單屬性是不可再分割的屬性。如下圖中的員工編號、生日與薪資等屬性。26/102屬性的類型屬性的類型(2)(2)單值屬性與多值屬性單值屬性與多值屬性多值屬性是一個可以有多個值的屬性(如下圖中的地點屬性),而一般的屬性都僅能有一個內容值,這種屬性我們就稱之為單值屬性(如下圖中的部門編號以及名稱屬性)。27/102屬性的類型屬性的類型(3)(3)儲存屬性與導出屬性儲存屬性與導出屬性某些屬性的資料值,在需要時可以動態的經由計算方式產生,因此無須被實際儲存起來,這種屬性稱之
12、為導出屬性。例如範例中的年紀屬性可以經由儲存屬性生日換算得到,因此在實際的資料庫中,不需要儲存年紀屬性的資料值。28/102例如下圖中的客戶的交易次數可以經由訂購紀錄中計算出來,因此交易次數屬性是屬於導出屬性。如果屬性是實體型態中,具有唯一性,可以用來識別實例的屬性,我們稱之為鍵值屬性。例如客戶與商品的編號屬性。29/1024.4.關係型態上的特性關係型態上的特性關係型態的Degree 是參與此關係的實體型態數目。關係型態若連接了兩個實體型態,表示此關係型態的Degree 為2,也稱為二元關係。若關係型態的Degree 為3,則又稱三元關係。二元關係三元關係30/1025.5.關聯限制條件關聯
13、限制條件關係型態連接的實體型態可以指定限制條件,稱為關聯限制條件,包含:基數比與參與。基數比限制條件是指一個實體所能參與的關係案例數。一對一關係31/102一對多關係多對多關係32/102參與限制條件是指實體集合的實例是全部或部份參與關係型態。若實體的存在必須依靠關係型態與另一實體產生關聯來決定,則我們稱之為全部參與;否則則為部份參與。33/102弱實體型態(Weak Entity Types)本身可以沒有任何的鍵值屬性。弱實體型態透過另一實體型態的一些屬性所組成的相關特定實體來辨認,而連結Weak Entity 與Identifying Owner 的關係稱為辨認關係。34/1024-4 4
14、-4 資料庫設計資料庫設計-正規化正規化一個未經過正規化的資料庫是一個不良的資料庫設計與實作方式。資料庫正規化是指可以對關聯進行適當的分割處理過程。35/1021.1.為什麼要做正規化為什麼要做正規化使關聯有良好的語意避免因為資料重複性造成資料不一致36/102避免新增異常要新增一個新的部門(如:9號,工程部),但因為這個新部門尚未有所屬員工,導致主鍵欄位必須為Null而無法完成部門的新增。37/102避免修改異常將2號部門(研發)的部門主管修改成E4,必須保證範例中的第三筆與第四筆值組的DMGR屬性皆有被正確修正,否則將會造成資料不一致的狀況。38/102避免刪除異常若員工(莊勝為,E5)離
15、職必須將其資料予以刪除,但此刪除動作將導致編號3號的生產部門被意外刪除了。39/1022.2.資料庫的正規化做法資料庫的正規化做法40/102第一階正規化(第一階正規化(1NF)第一階正規化(1NF)的要求是:關聯表沒有重複出現的欄位且每一屬性中只能存放單一的資料值。滿足1NF 的關聯不能有多值屬性或複合屬性的存在,因為這一類的屬性並無法讓屬性值滿足不可分的特性。41/102第二階正規化(第二階正規化(2NF)第二階正規化(2NF)的要求是:滿足1NF 且關聯表中的每一個非主要屬性必須完全功能相依於主鍵。因此在2NF 的處理過程中,主要在於消除非主要屬性與主鍵之間的部份功能相依性。2NF 42
16、/102第三階正規化(第三階正規化(3NF)第三階正規化(3NF)的要求條件是:滿足2NF 且每一個非主要屬性都不能遞移相依於主鍵。3NF 43/1024-5 4-5 實作案例實作案例 (財產盤點系統財產盤點系統)1.個案公司在組織上包含了許多不同的單位,這些單位都有其正式的單位名稱,同時公司也賦予各單位一個獨立的單位編號,這個編號在公司中是唯一的,可以用來代表公司的特定單位。2.各單位可以擁用許多人員,每個人員的屬性資料中,除了一個公司所配發的特定編號之外,亦包含人員的姓名、職稱、電話,與地址等基本資料屬性之外,為了讓這些人員能夠順利登入系統,執行才採盤點等系統功能,因此必須同時紀錄每位人員
17、的帳號、密碼,以及E-mail等相關資訊。3.為建立一套完善的財產盤點系統,於資料庫中必須清楚描述每項財產的編號,這項編號是公司於現行作業流程中對於財產項目所作的唯一性編碼,以及財產名稱、該財產項目的功能、數量、相片資訊,以及財產建立的日期等。基於RFID新系統的應用,我們於系統中將會紀錄貼附於每項財產上的RFID Tag標籤的卡號,以便讓RFID盤點系統能夠順利運作。除此之外,在每項財產項目紀錄被建立時,系統必須自行賦予每一財產記錄值組一個具有唯一性的流水編號。44/1024.為了能夠清楚表示財產設備設置的地點位置,我們將這些可能設置或存放財產的地點位置進行編碼,對於公司中每一個存放有財產的
18、特定位置給一個位置名稱,以及一個用來代表這個位置的編號,以便日後在進行盤點作業或執行其它系統功能時,對於財產的設置位置能有一個共同的標號與稱呼名稱。5.對於盤點作業時可能出現的狀況,我們經過分析後將其歸納成正常、送修,以及出借等數種可能的盤點狀態,並賦予各種狀況一個編號以及狀況名稱,並保留一個備註的屬性,用來對某一狀況的細節進行必要的描述或說明。6.對於公司的人員而言,可能隸屬於某一個單位,另就部門單位而言,一個單位可能會擁有一個以上的人員。在財產部份,許多財產項目可能會同樣被某一個單位所保管,亦即一個單位可能同時保管多項的財產項目,而許多財產項目也可能會位於同一個地點位置。7.每當進行一項財
19、產盤點作業時,系統必須清楚紀錄盤點的財產項目、盤點人員、盤點狀況、盤點日期,並描述財產的詳細位置,同時系統必須對每一個財產盤點作業,給予一個獨立的盤點紀錄編號,以方便日後管理者對於盤點記錄資料的查詢等資料處理。45/1021.1.資料庫設計資料庫設計46/102由實體關係模型轉換成一組關聯表集合這些關聯表必須經過正規化處理後並確認綱要47/102依據綱要產生可以建立關聯的SQL單位資料關聯表單位資料關聯表Unit屬性意義屬性意義屬性名稱屬性名稱資料型態資料型態鍵別鍵別參考關聯參考關聯單位編號Unit_IDintPK單位名稱Unit_Namechar 20Create table unit(Un
20、it_ID int Not Null,Unit_Name char(20),Primary key(Unit_ID)財產資料關聯表財產資料關聯表Goods屬性意義屬性意義屬性名稱屬性名稱資料型態資料型態鍵別鍵別 參考關聯參考關聯自動編號Goods_IDintPK單位編號Unit_IDintFKunit財產名稱Goods_Namechar 100財產編號Goods_Codechar 20財產建立日期Goods_Coming_Day datetime財產功能Goods_Functionvarchar 255 數量Goods_Numberint照片Photovarchar 100 RFID卡號Goo
21、ds_Tagvarchar 20位置編號Area_IDintFKareaCreate table goods(Goods_ID int Not Null,Unit_ID int,Goods_Name char(100),Goods_Code char(20),Goods_Coming_Day datetime,Goods_Function varchar(255),Goods_Number int,Photo varchar(100),Goods_Tag varchar(20),Area_ID int,Primary key(Goods_ID),Foreign key(Unit_ID)refe
22、rences unit,Foreign key(Area_ID)references area)48/1022.2.資料庫實作資料庫實作使用SQL Server 建立(1)資料庫(2)關聯表格(3)關聯表之間的參考(4)關聯表關係圖49/102(1)(1)建立資料庫建立資料庫新增一個wealth資料庫50/102(2)(2)建立關聯表格建立關聯表格新增並定義關聯表(Unit關聯表)51/102(2)(2)建立關聯表格建立關聯表格定義盤點狀況關聯表(Situ)定義盤點位置關聯表(Area)定義人員資料關聯表(Member)定義財產資料關聯表(Goods)定義盤點紀錄關聯表(Checkgoods)
23、52/102(3)(3)建立關聯表之間的參考建立關聯表之間的參考參考的設定是:對於關聯表中所存在的外來鍵,將其指定到所參考關聯表的主鍵屬性中。例如:範例資料庫中的Member 人員資料關聯表存在外來鍵Unit_ID的member關聯表外來鍵所參考的unit關聯表53/102Goods關聯表的Area_ID外來鍵設定54/102Goods關聯表的Unit_ID外來鍵設定55/102Checkgoods關聯表的Goods_ID外來鍵設定56/102 Checkgoods關聯表的Member_ID外來鍵設定57/102Checkgoods關聯表的Situ_ID外來鍵設定58/102(4)(4)建立關
24、聯表關係圖建立關聯表關係圖wealth 資料庫的關聯表關係59/1024-6 SQL4-6 SQLSQL(Structured Query Language)結構化查詢語言,是使用者用來操作DBMS 的重要橋樑。SQL 語言依指令功能,可以分成三類資料定義語言DDL(Data Definition Language):建立資料表、視界和索引等的SQL 指令。資料處理語言DML(Data Manipulation Language):資料表記錄插入、刪除、更新和查詢指令。資料控制語言DCL(Data Control Language):資料庫安全管理的權限設定指令。60/102內容大綱內容大綱1
25、.資料庫與關聯表的建立2.資料新增3.資料擷取4.資料修改5.資料刪除61/1021.1.資料庫與關聯表的建立資料庫與關聯表的建立建立資料庫的語法如下Create database 資料庫名稱例如建立一個名為 MyWealth 資料庫,則SQL 的語法為:Create database MyWealth 62/102刪除資料庫的語法如下:Drop database 資料庫名稱例如要刪除一個名為 MyWealth 資料庫,則SQL 的語法為:Drop database MyWealth63/102關聯表的建立 一個關聯表的建立必須指定關聯表的名稱、屬性集合、各屬性的資料型態、主鍵,有時候也會包含
展开阅读全文