版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
目錄概要設計的概念概要設計的目的、任務和步驟概要設計文檔界面設計目錄概要設計的概念概要設計的概念在軟件需求分析階段,已經(jīng)搞清楚了軟件“做什么”的問題,并通過說明書描述了出來,這算是完成了目標系統(tǒng)的邏輯模型。進入設計階段,要把軟件“做什么”變換成“怎么做”,這就是變?yōu)榱宋锢砟P?。把軟件需求轉(zhuǎn)換為軟件表示的過程,這種表示最開始只描述了軟件的總體體系結構,稱為概要設計。概要設計的概念在軟件需求分析階段,已經(jīng)搞清楚了軟件“做什么”概要設計的目的將軟件系統(tǒng)需求轉(zhuǎn)換為未來系統(tǒng)的設計,準確無誤地用計算機處理過程來表達用戶的各項要求,以此做為詳細設計的大綱做為軟件設計的第一階段,日后的設計均在此基礎之上進行概要設計的目的將軟件系統(tǒng)需求轉(zhuǎn)換為未來系統(tǒng)的設計,準確無誤地概要設計的任務和步驟設計系統(tǒng)方案,確定大致的功能模塊劃分,并選擇最佳實施方案。數(shù)據(jù)庫設計模塊功能分解描述-流程圖Web頁面結構的設計編寫概要設計文檔概要設計的任務和步驟設計系統(tǒng)方案,確定大致的功能模塊劃分,并概要設計文檔概要設計文檔應說明:程序的總體結構、功能分配、模塊劃分、輸入輸出、接口設計、運行設計、數(shù)據(jù)結構設計和出錯處理設計等,為詳細設計提供基礎數(shù)據(jù)庫E-R圖模塊基本設計概念和處理流程:通過文字和圖形的方式表示模塊設計結構設計用戶的所有界面網(wǎng)站布局,主題、顏色、圖片等概要設計文檔概要設計文檔應說明:程序的總體結構、功能分配、模概要設計文檔的主要內(nèi)容任務概述總體設計模塊設計接口定義數(shù)據(jù)結構設計運行設計出錯處理設計
等等….概要設計文檔的主要內(nèi)容任務概述主要功能模塊(需求設計)CMS系統(tǒng)網(wǎng)站首頁前臺顯示后臺管理欄目列表內(nèi)容列表內(nèi)容頁面搜索頁面多用戶權限系統(tǒng)內(nèi)容添加欄目添加欄目管理系統(tǒng)管理管理員登陸內(nèi)容管理會員管理會員登陸會員注冊進行模塊概要設計主要功能模塊(需求設計)CMS系統(tǒng)網(wǎng)前臺顯示后臺管理欄內(nèi)內(nèi)搜廣告管理留言管理一級欄目管理二級欄目管理三級欄目管理用戶級別分析用戶操作管理
用戶管理
更改密碼
設置權限
數(shù)據(jù)備份
數(shù)據(jù)還原數(shù)據(jù)清空頁眉頁腳信息關于我們重新登錄內(nèi)容管理欄目管理權限管理用戶管理系統(tǒng)維護幫助退出內(nèi)容信息管理系統(tǒng)系統(tǒng)功能模塊結構圖(概要設計)信息管理廣告管理留言管理一級欄目管理二級欄目管理三級欄目管理用戶級別接口設計用戶接口:B/S結構,網(wǎng)頁圖形用戶界面外部接口:與其他信息網(wǎng)站交互數(shù)據(jù),達到信息傳遞和共享的目的,主要有:RSS訂閱等,實現(xiàn)方法XML。內(nèi)部接口:本系統(tǒng)采用框架結構,框架通過使數(shù)據(jù)-數(shù)據(jù)視圖-數(shù)據(jù)行為相分離的方法數(shù)據(jù)視圖:基于數(shù)據(jù)結構來建立數(shù)據(jù)行為:以數(shù)據(jù)視圖的選擇信息做為參數(shù)來調(diào)用數(shù)據(jù):隱藏在數(shù)據(jù)視圖和數(shù)據(jù)行為的背后數(shù)據(jù)庫接口系統(tǒng)內(nèi)部的各種數(shù)據(jù)通常會以數(shù)據(jù)庫的方式保存,因此在接口定義時應確定與數(shù)據(jù)庫進行數(shù)據(jù)交換的數(shù)據(jù)格式、時機、方式等。接口設計用戶接口:B/S結構,網(wǎng)頁圖形用戶界面數(shù)據(jù)庫設計數(shù)據(jù)庫管理系統(tǒng)選型數(shù)據(jù)庫設計設計E-R圖數(shù)據(jù)庫規(guī)范化建立數(shù)據(jù)庫表結構數(shù)據(jù)庫設計數(shù)據(jù)庫管理系統(tǒng)選型設計數(shù)據(jù)庫的步驟1收集信息:
與該系統(tǒng)有關人員進行交流、坐談,充分理解數(shù)據(jù)庫需要完成的任務BBS論壇的基本功能:用戶注冊和登錄,后臺數(shù)據(jù)庫需要存放用戶的注冊信息和在線狀態(tài)信息;用戶發(fā)貼,后臺數(shù)據(jù)庫需要存放貼子相關信息,如貼子內(nèi)容、標題等;論壇版塊管理:后臺數(shù)據(jù)庫需要存放各個版塊信息,如版主、版塊名稱、貼子數(shù)等;設計數(shù)據(jù)庫的步驟1收集信息:BBS論壇的基本功能:設計數(shù)據(jù)庫的步驟2標識對象(實體-Entity)
標識數(shù)據(jù)庫要管理的關鍵對象或?qū)嶓w
實體一般是名詞:用戶:論壇普通用戶、各版塊的版主。用戶發(fā)的主貼用戶發(fā)的跟貼(回貼)版塊:論壇的各個版塊信息設計數(shù)據(jù)庫的步驟2標識對象(實體-Entity)實體一般是設計數(shù)據(jù)庫的步驟3論壇用戶:呢稱密碼電子郵件生日性別用戶的等級備注信息注冊日期狀態(tài)積分主貼發(fā)貼人發(fā)貼表情回復數(shù)量標題正文發(fā)貼時間點擊數(shù)狀態(tài):最后回復時間回貼貼子編號回貼人,回貼表情標題正文回貼時間點擊數(shù)版塊版塊名稱版主本版格言點擊率發(fā)貼數(shù)標識每個實體的屬性(Attribute)設計數(shù)據(jù)庫的步驟3論壇用戶:主貼回貼版塊標識每個實體的屬性設計數(shù)據(jù)庫的步驟4標識對象之間的關系(Relationship)跟貼和主貼有主從關系:我們需要在跟貼對象中表明它是誰的跟貼;版塊和用戶有關系:從用戶對象中可以根據(jù)版塊對象查出對應的版主用戶的情況;主貼和版塊有主從關系:需要表明發(fā)貼是屬于哪個版塊的;跟貼和版塊有主從關系:需要表明跟貼是屬于哪個版塊的;設計數(shù)據(jù)庫的步驟4標識對象之間的關系(Relationsh繪制E-R圖1E-R(Entity-Relationship)實體關系圖符合含義實體,一般是名詞屬性,一般是名詞關系,一般是動詞繪制E-R圖1E-R(Entity-Relationshi15繪制E-R圖2管理bbsUser(用戶,版主)……出生日期昵稱版塊名稱版主……bbsSection(版塊)繪制E-R圖2管理bbsUser……出生日期昵稱版塊名稱版16繪制E-R圖3映射基數(shù)一對一XXXXYYYYXXXXYYYY一對多XXXXY
YY多對一XXXXYYYY多對多客戶訂單產(chǎn)品1NMN繪制E-R圖3映射基數(shù)一對一XYXY一對多X17繪制E-R圖1111M1MMM用戶積分性別用戶等級備注信息注冊日期狀態(tài)密碼昵稱電子郵件生日論壇用戶(BBSUser)管理發(fā)表發(fā)表屬于屬于版塊名稱本版留言發(fā)貼數(shù)點擊率版主版塊(BBSSection)發(fā)貼(BBSTopic)發(fā)貼人正文狀態(tài)貼子編號所在版塊最后回復時間發(fā)貼表情回復數(shù)量點擊率發(fā)貼時間標題跟隨M跟貼(BBSReply)標題發(fā)貼人貼子編號正文點擊率所在版塊發(fā)貼時間最后回復時間發(fā)貼表情1論壇E-R圖
M繪制E-R圖1111M1MMM用戶積分性別用戶等級備注信息注18如何將E-R圖轉(zhuǎn)換為表實體->表屬性->字段(列)關系->表之間的主外鍵關系注意:沒有主鍵的表添加ID編號列,它沒有實際含義,用于做主鍵或外鍵,例如用戶表中的“UID”列,版塊表中添加“SID”列,發(fā)貼表和跟貼表中的“TID”列如何將E-R圖轉(zhuǎn)換為表實體->表19
如何將E-R圖轉(zhuǎn)換為表UID主鍵TID主鍵RID主鍵SID主鍵如何將E-R圖轉(zhuǎn)換為表UID主鍵TID主鍵RID主鍵SID20如何將E-R圖轉(zhuǎn)換為表添加各表之間的關系如何將E-R圖轉(zhuǎn)換為表添加各表之間的關系數(shù)據(jù)規(guī)范化僅有好的RDBMS并不足以避免數(shù)據(jù)冗余,必須在數(shù)據(jù)庫的設計中創(chuàng)建好的表結構DrE.F.codd最初定義了規(guī)范化的三個級別,范式是具有最小冗余的表結構。這些范式是:第一范式(1stNF-FirstNormalFromate)第二范式(2ndNF-SecondNormalFromate)第三范式(3rdNF-ThirdNormalFromate)數(shù)據(jù)規(guī)范化僅有好的RDBMS并不足以避免數(shù)據(jù)冗余,必須在數(shù)22第一范式(1stNF)BuyerIDCountryCity1142中國中國日本美國北京北京東京紐約………BuyerIDAddress1234中國北京市
美國紐約市英國利物浦日本東京市……第一范式的目標是確保每列的原子性如果每列都是不可再分的最小數(shù)據(jù)單元(也稱為最小的原子單元),則滿足第一范式(1NF)第一范式(1stNF)BuyerIDCountryCit第二范式(2ndNF)如果一個關系滿足1NF,并且除了主鍵以外的其他列,都依賴與該主鍵,則滿足第二范式(2NF)第二范式要求每個表只描述一件事情Orders字段例子訂單編號產(chǎn)品編號訂購日期價格001A0012000-2-3$29.00……Orders字段例子訂單編號訂購日期0012000-2-3Products字段例子產(chǎn)品編號價格A001$29.00第二范式(2ndNF)如果一個關系滿足1NF,并且除了主第三范式(3rdNF)如果一個關系滿足2NF,并且除了主鍵以外的其他列都不傳遞依賴于主鍵列,則滿足第三范式(3NF)Orders字段例子訂單編號訂購日期顧客編號0012000-2-3AB001顧客姓名Tony……Orders字段例子訂單編號訂購日期顧客編號0012000-2-3AB001……第三范式(3rdNF)如果一個關系滿足2NF,并且除了主最終生成:E-R實體關系圖最終生成:E-R實體關系圖數(shù)據(jù)存儲的完整性RollNumberNameAddressBookTaken12AliciaRuth12,TempleStreetAC09114JasonDarren123,SunsetBlvd.AC04315MaryBeth32,GoldenAvenueAC02112AliciaRuth12,TempleStreetAC04312AliciaRuth12,TmpleStreetAC01115MaryBeth33,GoldenAvenueAC011不同的地址!存在不正確、不準確的數(shù)據(jù),數(shù)據(jù)庫“失去了完整性”姓名數(shù)據(jù)存儲的完整性RollNumberNameAddress完整性分類數(shù)據(jù)實體完整性字段完整性引用完整性自定義完整性完整性分類數(shù)據(jù)實體完整性數(shù)據(jù)實體完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑0010015江西南昌雷銅0010014湖南新田吳蘭0010013山東定陶李山0010012….地址姓名學號江西南昌雷銅0010014×約束方法:唯一約束、主鍵約束、標識列數(shù)據(jù)實體完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑00字段完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑0010015江西南昌雷銅0010014湖南新田吳蘭0010013山東定陶李山0010012….地址姓名學號湖北江門李亮8700000000×約束方法:限制數(shù)據(jù)類型、外鍵約束、
默認值、非空約束字段完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑0010引用完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑0010015江西南昌雷銅0010014湖南新田吳蘭0010013山東定陶李山0010012…地址姓名學號980010021數(shù)學×約束方法:外鍵約束科目學號分數(shù)…數(shù)學001001288數(shù)學001001374語文001001267語文001001381數(shù)學001001698引用完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑0010自定義完整性AV121322喬峰CV0016AV372133玄痛CV0015AV378291沙悟凈AV0014AV378290豬悟能AV0013AV378289孫悟空AV0012….會員證用戶姓名用戶編號約束方法:存儲過程、觸發(fā)器帳號姓名信用….00192孫悟空700288豬悟能612333段譽890111虛竹4093000岳不群-10×觸發(fā)器:檢查信用值自定義完整性AV121322喬峰CV0016AV372133常見完整性約束:PRIMARYKEY 主碼約束(主鍵)UNIQUE 唯一性約束NOTNULL 非空值約束 AUTO_INCREMENT 用于整數(shù)列默認自增1UNSIGNED無符號整數(shù)DEFAULTdefault_value 默認值約束DEFAULTcurrent_timestamp創(chuàng)建新記錄時默認保存當前時間(僅適用timestamp數(shù)據(jù)列)ONUPDATEcurrent_timestamp修改記錄時默認保存當前時間(僅適用timestamp數(shù)據(jù)列)CHARACTERSETname指定字符集(僅適用字符串)常見完整性約束:數(shù)據(jù)庫編碼命名規(guī)范數(shù)據(jù)庫:
命名以字母“db”開頭(小寫),后面加數(shù)據(jù)庫相關英文單詞或縮寫。如:db_CRM。數(shù)據(jù)表:
以字母“tb”開頭(小寫),后面加數(shù)據(jù)表相關英文單詞或縮寫。如:tb_User。字段:
一般采用英文單詞或詞組命名,如找不到專業(yè)的英文單詞或詞組,可以用相同意義的英文單詞或詞組代替。如:UserName。數(shù)據(jù)庫編碼命名規(guī)范數(shù)據(jù)庫:數(shù)據(jù)庫結構設計數(shù)據(jù)表功能tb_content內(nèi)容數(shù)據(jù)表tb_comment用戶評論表tb_category欄目信息表tb_user用戶信息表數(shù)據(jù)庫結構設計數(shù)據(jù)表功能tb_content內(nèi)容數(shù)據(jù)表tb_用戶信息表字段類型屬性描述uidunsignedint(10)NOTNULLauto_incrementPRIMARYKEY用戶idusernamevarchar(20)NOTNULLUNIQUE用戶名passwordvarchar(50)NOTNULL用戶密碼timedatatimeNOTNULL注冊時間ipvarchar(16)NOTNULL登錄IPemailvarchar(30)NOTNULLUNIQUE用戶郵箱leveltinyint(1)NOTNULLdefault1用戶級別默認為普通權限1用戶信息表字段類型屬性描述uidunsignedint(1插入測試樣本數(shù)據(jù)最后,針對表結構特點,插入測試樣本數(shù)據(jù)插入測試樣本數(shù)據(jù)最后,針對表結構特點,插入測試樣本數(shù)據(jù)模塊設計模塊設計方式業(yè)務功能描述:功能說明、業(yè)務場景、表示層、業(yè)務層、數(shù)據(jù)層用例事件描述:前置條件、主流事件、備選事件、結果事件圖形描述:流程圖、用例圖模塊設計模塊設計方式業(yè)務描述:欄目管理模塊添加欄目模塊功能說明:添加新欄目業(yè)務場景:查看欄目,并進行添加新欄目操作表示層規(guī)格:輸入信息:欄目標題、欄目描述選擇信息:選擇父欄目輸出信息:顯示提交信息,添加成功與否業(yè)務描述:欄目管理模塊添加欄目模塊業(yè)務層規(guī)格:業(yè)務規(guī)則:只有系統(tǒng)管理員可以對欄目添加業(yè)務操作:添加欄目,判斷是幾級欄目,父欄目是什么數(shù)據(jù)層規(guī)格:業(yè)務數(shù)據(jù):欄目編號、欄目名稱、欄目描述、父欄目編號等數(shù)據(jù)操作:數(shù)據(jù)庫欄目記錄增加,如果是一級欄目沒有父欄目設置,其他的都要設置父欄目編號業(yè)務層規(guī)格:用例設計用例名稱:添加欄目前置條件:系統(tǒng)管理員登錄主流事件:輸入欄目名稱,欄目描述,選擇父欄目提交服務器異常事件:欄目名稱未輸入或者已經(jīng)存在父欄目不存在結果事件:提示欄目添加成功用例設計用例名稱:添加欄目流程圖-欄目添加欄目添加模塊流程圖流程圖-欄目添加欄目添加模塊業(yè)務描述:用戶管理模塊用戶登錄模塊功能說明:用戶登錄業(yè)務場景:首頁,用戶進行登錄表示層規(guī)格:輸入信息:用戶名、密碼、驗證碼等等輸出信息:登錄成功,用戶控制界面或后臺進入鏈接業(yè)務描述:用戶管理模塊用戶登錄模塊業(yè)務層規(guī)格:業(yè)務規(guī)則:訪問主頁的任何人都可以進行登錄業(yè)務操作:驗證用戶名、密碼是否為空和驗證碼是否輸入正確,驗證用戶是否存在和密碼是否正確數(shù)據(jù)層規(guī)格:業(yè)務數(shù)據(jù):用戶名、密碼數(shù)據(jù)操作:查詢是否具有滿足條件的記錄業(yè)務層規(guī)格:用例設計用例名稱:用戶登錄前置條件:無主流事件:輸入用戶名、密碼提交服務器異常事件:未輸入用戶名、密碼用戶名驗證不存在或密碼輸入不正確結果事件:提示用戶登錄成功用例設計用例名稱:用戶登錄流程圖-登錄用戶登錄流程圖流程圖-登錄用戶登錄用戶界面設計原則命令排序:(1)最常用的放在前面;(2)按習慣工作步驟排序;極小化:盡量少用鍵盤組合命令,減少用戶擊鍵次數(shù);廣度和深度:由于人的記憶局限,層次不宜大于3;一致性:使用一致的術語、一致的步驟、一致的動作行為;顯示提示信息;減少用戶記憶內(nèi)容;存在刪除操作時,應能提示或恢復操作;用戶界面吸引人用戶界面設計原則命令排序:首頁首頁DIV布局DIV布局項目實訓概要設計課件首頁首頁二級欄目首頁二級欄目首頁內(nèi)容顯示頁面內(nèi)容顯示頁面搜索頁面搜索頁面搜索內(nèi)容顯示頁面搜索內(nèi)容顯示頁面用戶注冊、登錄用戶注冊、登錄后臺登錄頁面后臺登錄頁面后臺頁面后臺頁面添加用戶添加用戶用戶列表用戶列表添加欄目添加欄目欄目列表欄目列表添加內(nèi)容添加內(nèi)容文章列表文章列表概要設計文檔與界面設計概要設計文檔與界面設計目錄概要設計的概念概要設計的目的、任務和步驟概要設計文檔界面設計目錄概要設計的概念概要設計的概念在軟件需求分析階段,已經(jīng)搞清楚了軟件“做什么”的問題,并通過說明書描述了出來,這算是完成了目標系統(tǒng)的邏輯模型。進入設計階段,要把軟件“做什么”變換成“怎么做”,這就是變?yōu)榱宋锢砟P汀0衍浖枨筠D(zhuǎn)換為軟件表示的過程,這種表示最開始只描述了軟件的總體體系結構,稱為概要設計。概要設計的概念在軟件需求分析階段,已經(jīng)搞清楚了軟件“做什么”概要設計的目的將軟件系統(tǒng)需求轉(zhuǎn)換為未來系統(tǒng)的設計,準確無誤地用計算機處理過程來表達用戶的各項要求,以此做為詳細設計的大綱做為軟件設計的第一階段,日后的設計均在此基礎之上進行概要設計的目的將軟件系統(tǒng)需求轉(zhuǎn)換為未來系統(tǒng)的設計,準確無誤地概要設計的任務和步驟設計系統(tǒng)方案,確定大致的功能模塊劃分,并選擇最佳實施方案。數(shù)據(jù)庫設計模塊功能分解描述-流程圖Web頁面結構的設計編寫概要設計文檔概要設計的任務和步驟設計系統(tǒng)方案,確定大致的功能模塊劃分,并概要設計文檔概要設計文檔應說明:程序的總體結構、功能分配、模塊劃分、輸入輸出、接口設計、運行設計、數(shù)據(jù)結構設計和出錯處理設計等,為詳細設計提供基礎數(shù)據(jù)庫E-R圖模塊基本設計概念和處理流程:通過文字和圖形的方式表示模塊設計結構設計用戶的所有界面網(wǎng)站布局,主題、顏色、圖片等概要設計文檔概要設計文檔應說明:程序的總體結構、功能分配、模概要設計文檔的主要內(nèi)容任務概述總體設計模塊設計接口定義數(shù)據(jù)結構設計運行設計出錯處理設計
等等….概要設計文檔的主要內(nèi)容任務概述主要功能模塊(需求設計)CMS系統(tǒng)網(wǎng)站首頁前臺顯示后臺管理欄目列表內(nèi)容列表內(nèi)容頁面搜索頁面多用戶權限系統(tǒng)內(nèi)容添加欄目添加欄目管理系統(tǒng)管理管理員登陸內(nèi)容管理會員管理會員登陸會員注冊進行模塊概要設計主要功能模塊(需求設計)CMS系統(tǒng)網(wǎng)前臺顯示后臺管理欄內(nèi)內(nèi)搜廣告管理留言管理一級欄目管理二級欄目管理三級欄目管理用戶級別分析用戶操作管理
用戶管理
更改密碼
設置權限
數(shù)據(jù)備份
數(shù)據(jù)還原數(shù)據(jù)清空頁眉頁腳信息關于我們重新登錄內(nèi)容管理欄目管理權限管理用戶管理系統(tǒng)維護幫助退出內(nèi)容信息管理系統(tǒng)系統(tǒng)功能模塊結構圖(概要設計)信息管理廣告管理留言管理一級欄目管理二級欄目管理三級欄目管理用戶級別接口設計用戶接口:B/S結構,網(wǎng)頁圖形用戶界面外部接口:與其他信息網(wǎng)站交互數(shù)據(jù),達到信息傳遞和共享的目的,主要有:RSS訂閱等,實現(xiàn)方法XML。內(nèi)部接口:本系統(tǒng)采用框架結構,框架通過使數(shù)據(jù)-數(shù)據(jù)視圖-數(shù)據(jù)行為相分離的方法數(shù)據(jù)視圖:基于數(shù)據(jù)結構來建立數(shù)據(jù)行為:以數(shù)據(jù)視圖的選擇信息做為參數(shù)來調(diào)用數(shù)據(jù):隱藏在數(shù)據(jù)視圖和數(shù)據(jù)行為的背后數(shù)據(jù)庫接口系統(tǒng)內(nèi)部的各種數(shù)據(jù)通常會以數(shù)據(jù)庫的方式保存,因此在接口定義時應確定與數(shù)據(jù)庫進行數(shù)據(jù)交換的數(shù)據(jù)格式、時機、方式等。接口設計用戶接口:B/S結構,網(wǎng)頁圖形用戶界面數(shù)據(jù)庫設計數(shù)據(jù)庫管理系統(tǒng)選型數(shù)據(jù)庫設計設計E-R圖數(shù)據(jù)庫規(guī)范化建立數(shù)據(jù)庫表結構數(shù)據(jù)庫設計數(shù)據(jù)庫管理系統(tǒng)選型設計數(shù)據(jù)庫的步驟1收集信息:
與該系統(tǒng)有關人員進行交流、坐談,充分理解數(shù)據(jù)庫需要完成的任務BBS論壇的基本功能:用戶注冊和登錄,后臺數(shù)據(jù)庫需要存放用戶的注冊信息和在線狀態(tài)信息;用戶發(fā)貼,后臺數(shù)據(jù)庫需要存放貼子相關信息,如貼子內(nèi)容、標題等;論壇版塊管理:后臺數(shù)據(jù)庫需要存放各個版塊信息,如版主、版塊名稱、貼子數(shù)等;設計數(shù)據(jù)庫的步驟1收集信息:BBS論壇的基本功能:設計數(shù)據(jù)庫的步驟2標識對象(實體-Entity)
標識數(shù)據(jù)庫要管理的關鍵對象或?qū)嶓w
實體一般是名詞:用戶:論壇普通用戶、各版塊的版主。用戶發(fā)的主貼用戶發(fā)的跟貼(回貼)版塊:論壇的各個版塊信息設計數(shù)據(jù)庫的步驟2標識對象(實體-Entity)實體一般是設計數(shù)據(jù)庫的步驟3論壇用戶:呢稱密碼電子郵件生日性別用戶的等級備注信息注冊日期狀態(tài)積分主貼發(fā)貼人發(fā)貼表情回復數(shù)量標題正文發(fā)貼時間點擊數(shù)狀態(tài):最后回復時間回貼貼子編號回貼人,回貼表情標題正文回貼時間點擊數(shù)版塊版塊名稱版主本版格言點擊率發(fā)貼數(shù)標識每個實體的屬性(Attribute)設計數(shù)據(jù)庫的步驟3論壇用戶:主貼回貼版塊標識每個實體的屬性設計數(shù)據(jù)庫的步驟4標識對象之間的關系(Relationship)跟貼和主貼有主從關系:我們需要在跟貼對象中表明它是誰的跟貼;版塊和用戶有關系:從用戶對象中可以根據(jù)版塊對象查出對應的版主用戶的情況;主貼和版塊有主從關系:需要表明發(fā)貼是屬于哪個版塊的;跟貼和版塊有主從關系:需要表明跟貼是屬于哪個版塊的;設計數(shù)據(jù)庫的步驟4標識對象之間的關系(Relationsh繪制E-R圖1E-R(Entity-Relationship)實體關系圖符合含義實體,一般是名詞屬性,一般是名詞關系,一般是動詞繪制E-R圖1E-R(Entity-Relationshi80繪制E-R圖2管理bbsUser(用戶,版主)……出生日期昵稱版塊名稱版主……bbsSection(版塊)繪制E-R圖2管理bbsUser……出生日期昵稱版塊名稱版81繪制E-R圖3映射基數(shù)一對一XXXXYYYYXXXXYYYY一對多XXXXY
YY多對一XXXXYYYY多對多客戶訂單產(chǎn)品1NMN繪制E-R圖3映射基數(shù)一對一XYXY一對多X82繪制E-R圖1111M1MMM用戶積分性別用戶等級備注信息注冊日期狀態(tài)密碼昵稱電子郵件生日論壇用戶(BBSUser)管理發(fā)表發(fā)表屬于屬于版塊名稱本版留言發(fā)貼數(shù)點擊率版主版塊(BBSSection)發(fā)貼(BBSTopic)發(fā)貼人正文狀態(tài)貼子編號所在版塊最后回復時間發(fā)貼表情回復數(shù)量點擊率發(fā)貼時間標題跟隨M跟貼(BBSReply)標題發(fā)貼人貼子編號正文點擊率所在版塊發(fā)貼時間最后回復時間發(fā)貼表情1論壇E-R圖
M繪制E-R圖1111M1MMM用戶積分性別用戶等級備注信息注83如何將E-R圖轉(zhuǎn)換為表實體->表屬性->字段(列)關系->表之間的主外鍵關系注意:沒有主鍵的表添加ID編號列,它沒有實際含義,用于做主鍵或外鍵,例如用戶表中的“UID”列,版塊表中添加“SID”列,發(fā)貼表和跟貼表中的“TID”列如何將E-R圖轉(zhuǎn)換為表實體->表84
如何將E-R圖轉(zhuǎn)換為表UID主鍵TID主鍵RID主鍵SID主鍵如何將E-R圖轉(zhuǎn)換為表UID主鍵TID主鍵RID主鍵SID85如何將E-R圖轉(zhuǎn)換為表添加各表之間的關系如何將E-R圖轉(zhuǎn)換為表添加各表之間的關系數(shù)據(jù)規(guī)范化僅有好的RDBMS并不足以避免數(shù)據(jù)冗余,必須在數(shù)據(jù)庫的設計中創(chuàng)建好的表結構DrE.F.codd最初定義了規(guī)范化的三個級別,范式是具有最小冗余的表結構。這些范式是:第一范式(1stNF-FirstNormalFromate)第二范式(2ndNF-SecondNormalFromate)第三范式(3rdNF-ThirdNormalFromate)數(shù)據(jù)規(guī)范化僅有好的RDBMS并不足以避免數(shù)據(jù)冗余,必須在數(shù)87第一范式(1stNF)BuyerIDCountryCity1142中國中國日本美國北京北京東京紐約………BuyerIDAddress1234中國北京市
美國紐約市英國利物浦日本東京市……第一范式的目標是確保每列的原子性如果每列都是不可再分的最小數(shù)據(jù)單元(也稱為最小的原子單元),則滿足第一范式(1NF)第一范式(1stNF)BuyerIDCountryCit第二范式(2ndNF)如果一個關系滿足1NF,并且除了主鍵以外的其他列,都依賴與該主鍵,則滿足第二范式(2NF)第二范式要求每個表只描述一件事情Orders字段例子訂單編號產(chǎn)品編號訂購日期價格001A0012000-2-3$29.00……Orders字段例子訂單編號訂購日期0012000-2-3Products字段例子產(chǎn)品編號價格A001$29.00第二范式(2ndNF)如果一個關系滿足1NF,并且除了主第三范式(3rdNF)如果一個關系滿足2NF,并且除了主鍵以外的其他列都不傳遞依賴于主鍵列,則滿足第三范式(3NF)Orders字段例子訂單編號訂購日期顧客編號0012000-2-3AB001顧客姓名Tony……Orders字段例子訂單編號訂購日期顧客編號0012000-2-3AB001……第三范式(3rdNF)如果一個關系滿足2NF,并且除了主最終生成:E-R實體關系圖最終生成:E-R實體關系圖數(shù)據(jù)存儲的完整性RollNumberNameAddressBookTaken12AliciaRuth12,TempleStreetAC09114JasonDarren123,SunsetBlvd.AC04315MaryBeth32,GoldenAvenueAC02112AliciaRuth12,TempleStreetAC04312AliciaRuth12,TmpleStreetAC01115MaryBeth33,GoldenAvenueAC011不同的地址!存在不正確、不準確的數(shù)據(jù),數(shù)據(jù)庫“失去了完整性”姓名數(shù)據(jù)存儲的完整性RollNumberNameAddress完整性分類數(shù)據(jù)實體完整性字段完整性引用完整性自定義完整性完整性分類數(shù)據(jù)實體完整性數(shù)據(jù)實體完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑0010015江西南昌雷銅0010014湖南新田吳蘭0010013山東定陶李山0010012….地址姓名學號江西南昌雷銅0010014×約束方法:唯一約束、主鍵約束、標識列數(shù)據(jù)實體完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑00字段完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑0010015江西南昌雷銅0010014湖南新田吳蘭0010013山東定陶李山0010012….地址姓名學號湖北江門李亮8700000000×約束方法:限制數(shù)據(jù)類型、外鍵約束、
默認值、非空約束字段完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑0010引用完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑0010015江西南昌雷銅0010014湖南新田吳蘭0010013山東定陶李山0010012…地址姓名學號980010021數(shù)學×約束方法:外鍵約束科目學號分數(shù)…數(shù)學001001288數(shù)學001001374語文001001267語文001001381數(shù)學001001698引用完整性河南新鄉(xiāng)趙可以0010016河南新鄉(xiāng)張麗鵑0010自定義完整性AV121322喬峰CV0016AV372133玄痛CV0015AV378291沙悟凈AV0014AV378290豬悟能AV0013AV378289孫悟空AV0012….會員證用戶姓名用戶編號約束方法:存儲過程、觸發(fā)器帳號姓名信用….00192孫悟空700288豬悟能612333段譽890111虛竹4093000岳不群-10×觸發(fā)器:檢查信用值自定義完整性AV121322喬峰CV0016AV372133常見完整性約束:PRIMARYKEY 主碼約束(主鍵)UNIQUE 唯一性約束NOTNULL 非空值約束 AUTO_INCREMENT 用于整數(shù)列默認自增1UNSIGNED無符號整數(shù)DEFAULTdefault_value 默認值約束DEFAULTcurrent_timestamp創(chuàng)建新記錄時默認保存當前時間(僅適用timestamp數(shù)據(jù)列)ONUPDATEcurrent_timestamp修改記錄時默認保存當前時間(僅適用timestamp數(shù)據(jù)列)CHARACTERSETname指定字符集(僅適用字符串)常見完整性約束:數(shù)據(jù)庫編碼命名規(guī)范數(shù)據(jù)庫:
命名以字母“db”開頭(小寫),后面加數(shù)據(jù)庫相關英文單詞或縮寫。如:db_CRM。數(shù)據(jù)表:
以字母“tb”開頭(小寫),后面加數(shù)據(jù)表相關英文單詞或縮寫。如:tb_User。字段:
一般采用英文單詞或詞組命名,如找不到專業(yè)的英文單詞或詞組,可以用相同意義的英文單詞或詞組代替。如:UserName。數(shù)據(jù)庫編碼命名規(guī)范數(shù)據(jù)庫:數(shù)據(jù)庫結構設計數(shù)據(jù)表功能tb_content內(nèi)容數(shù)據(jù)表tb_comment用戶評論表tb_category欄目信息表tb_user用戶信息表數(shù)據(jù)庫結構設計數(shù)據(jù)表功能tb_content內(nèi)容數(shù)據(jù)表tb_用戶信息表字段類型屬性描述uidunsignedint(10)NOTNULLauto_incrementPRIMARYKEY用戶idusernamevarchar(20)NOTNUL
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度木工工藝研發(fā)與創(chuàng)新資助合同
- 2025年門禁產(chǎn)品銷售與客戶定制化解決方案合同范本3篇
- 2025年度農(nóng)藥殘留檢測技術服務合同書2篇
- 2025年度噴泉景區(qū)旅游推廣及市場營銷合同
- 艾滋病病毒王利沙HIV講解
- 2025年度宅基地使用權及房產(chǎn)繼承合同
- 2025年度旅游行業(yè)導游及服務人員派遣合同2篇
- 二零二五年度雛雞養(yǎng)殖與休閑農(nóng)業(yè)融合發(fā)展合同4篇
- 2025版民間抵押資產(chǎn)處置合同樣本3篇
- 2025年建筑行業(yè)自動化的機遇與挑戰(zhàn)
- 2024年湖南高速鐵路職業(yè)技術學院高職單招數(shù)學歷年參考題庫含答案解析
- 國旗班指揮刀訓練動作要領
- 2024年國家工作人員學法用法考試題庫及參考答案
- 國家公務員考試(面試)試題及解答參考(2024年)
- 《阻燃材料與技術》課件 第6講 阻燃纖維及織物
- 同等學力英語申碩考試詞匯(第六版大綱)電子版
- 人教版五年級上冊遞等式計算100道及答案
- 墓地個人協(xié)議合同模板
- 2024年部編版初中語文各年級教師用書七年級(上冊)
- 2024年新課標全國Ⅰ卷語文高考真題試卷(含答案)
- 湖南省退休人員節(jié)日慰問政策
評論
0/150
提交評論