一、數(shù)據(jù)建模簡介
數(shù)據(jù)建模不僅可以對象的屬性建模(比如E-R圖),也可以對數(shù)據(jù)的行為建模(比如觸發(fā)器Trigger、存儲過程Stored Procedure).在進行數(shù)據(jù)庫設(shè)計時,設(shè)計到如下幾個概念:
模式 Schema、主鍵 Primary、外鍵 Foreign key、關(guān)系 Relationship、約束constraint、索引 Index、觸發(fā)器 Trigger、存儲過程 Stored Procedure、視圖 View。
二、數(shù)據(jù)建模元素
1、表(Table)
表是關(guān)系數(shù)據(jù)庫最基本的模型結(jié)構(gòu)。如下圖
表的主鍵:InventoryID
表的外鍵:WarehouseId,關(guān)聯(lián)到表Warehouse的主鍵
可以設(shè)置Table的數(shù)據(jù)庫類型,如下圖
也可以設(shè)置表空間,如下圖
2、表索引(Table Index)
指按表文件中某個關(guān)鍵字段或表達式建立記錄的邏輯順序。它是由一系列記錄號組成的一個列表,提供對數(shù)據(jù)的快速訪問。索引不改變表中記錄的物理順序
3、表觸發(fā)器(Table Trigger)
當(dāng)對某一表進行諸如UPDATE、 INSERT、 DELETE 這些操作時,SQL Server 就會自動執(zhí)行觸發(fā)器所定義的SQL 語句,從而確保對數(shù)據(jù)的處理必須符合由這些SQL 語句所定義的規(guī)則。
觸發(fā)器的主要作用就是其能夠?qū)崿F(xiàn)由主鍵和外鍵所不能保證的復(fù)雜的參照完整性和數(shù)據(jù)的一致性
4、表約束(Table Constraint)
通過對列的約束,保證數(shù)據(jù)的有效性。
5、視圖(View)
視圖是從一個或多個表或視圖中導(dǎo)出的表,其結(jié)構(gòu)和數(shù)據(jù)是建立在對表的查詢基礎(chǔ)上的。如下圖
6、存儲過程(Stored Procedure)
將常用的或很復(fù)雜的工作,預(yù)先用SQL語句寫好并用一個指定的名稱存儲起來, 那么以后要叫數(shù)據(jù)庫提供與已定義好的存儲過程的功能相同的服務(wù)時,只需調(diào)用execute,即可自動完成命令。
三、數(shù)據(jù)建模實例
1、表有倉庫Warehouse、庫存Inventory以及書Book
2、主鍵分別為WarehouseID,InventoryID,ISBN
3、外鍵,表Iinventory的外鍵是WarehouseID,同時也是Warehouse的主鍵表Book的外鍵是InventoryID,同時也是Inventory的主鍵
4、關(guān)系,表Warehouse與表Inventory是一對多的關(guān)系
Inventory與表Book是一對多的關(guān)系。
四、總結(jié)
本文主要介紹了數(shù)據(jù)庫建模所涉及建模元素,主要包括模式 Schema、主鍵 Primary、外鍵 Foreign key、關(guān)系 Relationship、約束 constraint、索引 Index、觸發(fā)器 Trigger、存儲過程 Stored Procedure、視圖 View等等,并配以實例加以說明。本篇文章比較簡單,也是《UML建模-面向?qū)ο蠹夹g(shù)》系列文章的最后一篇建模文章。對此系列文章,后期抽個時間再寫個總結(jié),使的UML建模系列文章知識性更連貫,內(nèi)容更加清晰。
本文鏈接:http://m.95time.cn/tech/program/2010/7695.asp
出處:靈動生活
責(zé)任編輯:bluehearts
上一頁 UML建模之業(yè)務(wù)處理模型(Business Process Model,BPM) [7] 下一頁
◎進入論壇網(wǎng)絡(luò)編程版塊參加討論
|