食堂管理系統(tǒng)_畢業(yè)設(shè)計(jì)論文_第1頁
食堂管理系統(tǒng)_畢業(yè)設(shè)計(jì)論文_第2頁
食堂管理系統(tǒng)_畢業(yè)設(shè)計(jì)論文_第3頁
食堂管理系統(tǒng)_畢業(yè)設(shè)計(jì)論文_第4頁
食堂管理系統(tǒng)_畢業(yè)設(shè)計(jì)論文_第5頁
已閱讀5頁,還剩48頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

一、引言211背景與目的212后臺(tái)數(shù)據(jù)庫為SQLSERVER2000簡(jiǎn)介2二、系統(tǒng)需求分析221系統(tǒng)功能分析3221子模塊功能分析322系統(tǒng)功能模塊設(shè)計(jì)5221系統(tǒng)功能管理模塊623數(shù)據(jù)流圖7231卡交易數(shù)據(jù)流圖7232現(xiàn)金交易數(shù)據(jù)流圖8233庫存管理數(shù)據(jù)流圖9234整體流圖924可行性分析1125數(shù)據(jù)字典11三、概念結(jié)構(gòu)設(shè)計(jì)1531構(gòu)思ERD的四條原則1532設(shè)計(jì)ER圖16321分ER圖16322整體ER圖22四、邏輯結(jié)構(gòu)設(shè)計(jì)2341一般邏輯模型設(shè)計(jì)23411由ERD導(dǎo)出一般關(guān)系模型的四條原則23412數(shù)據(jù)庫初步的關(guān)系框架(ER圖向關(guān)系模型轉(zhuǎn)化)23413數(shù)據(jù)模型優(yōu)化2542具體邏輯模型設(shè)計(jì)2643設(shè)計(jì)用戶子模式35五、物理結(jié)構(gòu)設(shè)計(jì)3961建立索引4062建立觸發(fā)器40六、數(shù)據(jù)庫結(jié)構(gòu)的實(shí)現(xiàn)4261數(shù)據(jù)定義42611創(chuàng)建表格SQL語句42612創(chuàng)建視圖SQL語句45613創(chuàng)建索引SQL語句4763數(shù)據(jù)查詢4764數(shù)據(jù)更新49641數(shù)據(jù)添加49642數(shù)據(jù)修改49643數(shù)據(jù)刪除50七、總結(jié)51一、引言11背景與目的隨著高校辦學(xué)規(guī)模的不斷擴(kuò)大,高校后勤管理工作也日趨繁雜許多大型高校擁有多個(gè)校區(qū),有十幾個(gè)甚至幾十個(gè)學(xué)生和教工食堂,這些食堂的地理位置分散,又要實(shí)現(xiàn)統(tǒng)一的協(xié)調(diào)管理,就不得不借助現(xiàn)代化的管理模式網(wǎng)絡(luò)管理模式由于當(dāng)前學(xué)校的規(guī)模不斷擴(kuò)大,學(xué)生數(shù)量不斷增加,學(xué)生信息量也成倍增長(zhǎng),食堂管理工作成為學(xué)校各項(xiàng)管理工作的一個(gè)重要部分。面對(duì)龐大的信息量,如何有效在提高食堂管理工作的效率是學(xué)校急需解決的問題。這樣不僅提高了工作效率,也避免了以前手工作業(yè)的麻煩,從而使得管理者能夠準(zhǔn)確,有效的管理餐飲。12后臺(tái)數(shù)據(jù)庫為SQLSERVER2000簡(jiǎn)介SQL全稱是“結(jié)構(gòu)化查詢語言STRUCTUREDQUERYLANGUAGE”,最早的是IBM的圣約瑟研究實(shí)驗(yàn)室為其關(guān)系數(shù)據(jù)庫管理系統(tǒng)SYSTEMR開發(fā)的一種查詢語言,它的前身是SQUARE語言。SQL語言結(jié)構(gòu)簡(jiǎn)潔,功能強(qiáng)大,簡(jiǎn)單易學(xué),所以自從IBM公司1981年推出以來,SQL語言,得到了廣泛的應(yīng)用。SQL是高級(jí)的非過程化編程語言,允許用戶在高層數(shù)據(jù)結(jié)構(gòu)上工作。SQL不要求用戶指定對(duì)數(shù)據(jù)的存放方法,也不需要用戶了解具體的數(shù)據(jù)存放方式,所以具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫系統(tǒng)可以使用相同的SQL語言作為數(shù)據(jù)輸入與管理的接口。它以記錄集合作為操縱對(duì)象,所有SQL語句接受集合作為輸入,返回集合作為輸出,這種集合特性允許一條SQL語句的輸出作為另一條SQL語句的輸入,所以SQL語言可以嵌套,這使他具有極大的靈活性和強(qiáng)大的功能,在多數(shù)情況下,在其他語言中需要一大段程序?qū)崿F(xiàn)的一個(gè)單獨(dú)事件只需要一個(gè)SQL語句就可以達(dá)到目的,這也意味著用SQL語言可以寫出非常復(fù)雜的語句。二、系統(tǒng)需求分析隨著21世紀(jì)的到來,人們更深切地感受到了計(jì)算機(jī)在生活和工作中的作用越來越重要,越來越多職業(yè)需要具有計(jì)算機(jī)的應(yīng)用技能。掌握計(jì)算機(jī)是職業(yè)的雪要,更是事業(yè)發(fā)展的需要。信息在社會(huì)和經(jīng)濟(jì)的發(fā)展中所起的作用越來越為人們所重視。信息資源的開發(fā)利用水平已成為衡量一個(gè)國家綜合國力的重要標(biāo)志之一。在計(jì)算機(jī)的三大主要應(yīng)用領(lǐng)域(科學(xué)計(jì)算、數(shù)據(jù)處理與過程控制)中,數(shù)據(jù)處理的比重占70左右。計(jì)算機(jī)作為信息處理的工具,為適應(yīng)數(shù)據(jù)處理需求的迅速提高,滿足各類系統(tǒng)對(duì)數(shù)據(jù)處理的要求,在文件系統(tǒng)的基礎(chǔ)上發(fā)展起了數(shù)據(jù)庫系統(tǒng)。隨著計(jì)算機(jī)計(jì)算機(jī)技術(shù)的飛速發(fā)展,計(jì)算機(jī)在企業(yè)管理中應(yīng)用及普及,利用計(jì)算機(jī)實(shí)現(xiàn)企業(yè)信息管理勢(shì)在必行。本課題以高等院校為對(duì)象,作為高效要面對(duì)大量的課程設(shè)計(jì)項(xiàng)目及相關(guān)信息的處理,這就需要一個(gè)課程設(shè)計(jì)管理系統(tǒng)來提高管理工作的效率。通過本系統(tǒng),可以做到信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢,從而減少管理工作方面的工作量。數(shù)據(jù)處理技術(shù)已深入到我們工作和生活的方方面面,而數(shù)據(jù)庫技術(shù)是數(shù)據(jù)處理不可缺少的手段。隨著數(shù)據(jù)庫技術(shù)的發(fā)展,面向?qū)ο蟮臄?shù)據(jù)庫、分布式數(shù)據(jù)庫、多媒體數(shù)據(jù)庫、數(shù)據(jù)庫開發(fā)工具的研究方興未艾,這些技術(shù)的發(fā)展使用軟件的開發(fā)速度更快、成本更低、質(zhì)量更好、功能更強(qiáng)。管理信息系統(tǒng)是一門新興的、集管理科學(xué)、信息科學(xué)、系統(tǒng)科學(xué)及計(jì)算機(jī)科學(xué)為一體的綜合性學(xué)科,研究的是信息管理活動(dòng)的全過程,以便有效的管理信息,提供各類管理決策信息,輔助企業(yè)進(jìn)行現(xiàn)代化管理。管理信息系統(tǒng)它具備數(shù)據(jù)處理、計(jì)劃、控制、預(yù)測(cè)和輔助決策功能,具體作用如下5點(diǎn)內(nèi)容(1)用統(tǒng)一標(biāo)準(zhǔn)處理和提供信息,排除使用前后矛盾的不完整的數(shù)據(jù)。(2)完整、及時(shí)提供在管理及決策中需要的數(shù)據(jù)。(3)利用指定的數(shù)據(jù)關(guān)系分析數(shù)據(jù),客觀預(yù)測(cè)未來。(4)向各級(jí)管理機(jī)構(gòu)提供不同詳細(xì)程度的報(bào)告,縮短分析和解釋的時(shí)間。(5)用最低的費(fèi)用最短的時(shí)間提供盡可能精確、可靠的信息,以便使決策者選擇最佳的實(shí)施方案,以提高企業(yè)的經(jīng)濟(jì)效益。21系統(tǒng)功能分析系統(tǒng)開發(fā)的總體任務(wù)是受用計(jì)算機(jī)信息管理技術(shù),實(shí)現(xiàn)食堂各種信息的系統(tǒng)化,規(guī)范化,自動(dòng)化,提高食堂管理的效率。對(duì)應(yīng)用系統(tǒng)項(xiàng)目的開發(fā),首先要對(duì)程序要實(shí)現(xiàn)的功能和目標(biāo)進(jìn)行整體分析和規(guī)劃,確保在后期開發(fā)中不會(huì)出現(xiàn)遺漏或重大缺陷。因此在軟件開發(fā)中,要嚴(yán)格按照軟件工程的流程進(jìn)行系統(tǒng)的分析和設(shè)計(jì)系統(tǒng)功能分析是在系統(tǒng)開發(fā)的總體任務(wù)的基本上完成的。主要功能1、消費(fèi)者信息管理2、預(yù)訂信息管理3、成本核算管理4、庫存管理其中主要任務(wù)為消費(fèi)者信息管理和結(jié)算信息管理??偟墓δ芴攸c(diǎn)完善、全面的綜合查詢報(bào)表翔實(shí),實(shí)用性強(qiáng)221子模塊功能分析消費(fèi)者信息管理對(duì)來自客戶端的不同用戶進(jìn)行權(quán)限審查,限定對(duì)數(shù)據(jù)庫的訪問級(jí)別預(yù)訂信息管理各部門向采購部發(fā)出需求申請(qǐng),預(yù)定用貨;對(duì)于采購部已送達(dá)的貨物進(jìn)行電子簽名接收;預(yù)訂信息管理訂餐、訂餐信息修改、訂餐信息取消、定金處理、訂餐統(tǒng)計(jì)、訂餐查詢,訂餐報(bào)表。有效的預(yù)訂處理,充分發(fā)揮銷售潛力,這使該系統(tǒng)更實(shí)用、全面、方便和快捷。需要有關(guān)包房的詳細(xì)情況和全面的咨詢服務(wù),減少了文件資料的手工整理等繁瑣工作,并能避免處理上的錯(cuò)誤,從而簡(jiǎn)化預(yù)訂房間手續(xù)。成本核算管理對(duì)成本利潤的綜合分析。成本包括固定成本(人員工資、水電、稅等)變動(dòng)成本(菜、酒、米等的采購成本)。收入指每天的銷售收入。能核算每天、每月、每年、以及任何一段時(shí)間的成本,利潤。微機(jī)室核計(jì)每天各單位、各窗口的收益情況并消費(fèi)者信息管理消費(fèi)者信息修改消費(fèi)者信息添加消費(fèi)者信息刪除消費(fèi)者信息查詢預(yù)訂信息管理預(yù)訂信息修改預(yù)訂信息添加剩余房間信息查詢預(yù)訂信息查詢將結(jié)果送入數(shù)據(jù)庫供管理層查詢;成本查詢用于各個(gè)單位查詢各個(gè)部門每日每月的成本情況。效益查詢用于各個(gè)單位查詢各個(gè)部門每日每月的收益情況。庫存管理管理各種用品的使用情況,確定用貨來源和送達(dá)目的地;對(duì)商品的入庫,出庫,結(jié)算的管理。要有明細(xì)賬,記載出入庫的詳細(xì)情況。供食堂負(fù)責(zé)人員和采購人員還有審查工作,實(shí)現(xiàn)對(duì)于每天各部門、各食堂中所使用的貨物進(jìn)行審核和查看現(xiàn)有庫存情況;22系統(tǒng)功能模塊設(shè)計(jì)對(duì)上述各項(xiàng)功能進(jìn)行集中、分塊分析,按照結(jié)構(gòu)化程序設(shè)計(jì)的要求,得到如圖所示的這個(gè)系統(tǒng)的功能模塊圖成本核算管理成本查詢效益查詢?nèi)霂焐唐凡樵兂鰩焐唐凡樵儙齑婀芾?21系統(tǒng)功能管理模塊食堂管理系統(tǒng)消費(fèi)者信息管理預(yù)訂信息管理成本核算管理庫存管理消費(fèi)者信息查詢消費(fèi)者信息修改消費(fèi)者信息添加消費(fèi)者信息刪除預(yù)訂信息修改預(yù)訂信息添加預(yù)訂信息刪除預(yù)訂信息查詢成本查詢效益查詢?nèi)霂焐唐凡樵兂鰩焐唐凡樵?3數(shù)據(jù)流圖【注釋數(shù)據(jù)流圖,簡(jiǎn)稱DFD,是SA方法中用于表示系統(tǒng)邏輯模型的一種工具,它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過程,由于它只反映系統(tǒng)必須完成的邏輯功能,所以它是一種功能模型】數(shù)據(jù)流程圖是組織中信息運(yùn)動(dòng)的抽象,是管理信息系統(tǒng)邏輯模型的主要形式。它可以綜合的反映出信息在系統(tǒng)中的流動(dòng)、處理和存儲(chǔ)情況,具有良好的抽象性和概括性。它在調(diào)查的基礎(chǔ)上,從系統(tǒng)的科學(xué)性、管理的合理性、實(shí)際運(yùn)行的可行性角度出發(fā),將信息處理功能和彼此之間的聯(lián)系自頂向下、逐層分解,從邏輯上精確地描述系統(tǒng)應(yīng)具有的數(shù)據(jù)加工、數(shù)據(jù)輸入、數(shù)據(jù)輸出、數(shù)據(jù)存儲(chǔ)及數(shù)據(jù)來源和去向(外部實(shí)體)等項(xiàng)目。數(shù)據(jù)流程圖和系統(tǒng)的物理描述無關(guān),它所描述的內(nèi)容不涉及技術(shù)細(xì)節(jié),而是面向用戶的,即使完全不懂信息技術(shù)的用戶也容易理解。因此,數(shù)據(jù)流程圖成為系統(tǒng)分析員與用戶進(jìn)行交流的有效手段,同時(shí)也成為系統(tǒng)設(shè)計(jì)的主要依據(jù)之一。用戶的需求具體體現(xiàn)在各種信息的提供、保存、更新和查詢等方面,這就要求數(shù)據(jù)庫結(jié)構(gòu)能充分滿足各種信息的輸入和輸出。收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)字典,為數(shù)據(jù)庫的具體設(shè)計(jì)打下基礎(chǔ)。數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理之間的關(guān)系。數(shù)據(jù)流圖是有層次之分的,越高層次的數(shù)據(jù)流圖表現(xiàn)的業(yè)務(wù)邏輯越抽象,越底層次的數(shù)據(jù)流圖表現(xiàn)得業(yè)務(wù)邏輯越具體。在仔細(xì)的分析調(diào)查有關(guān)食堂管理信息需求的基礎(chǔ)上,得到如下圖所示的這個(gè)系統(tǒng)所處理的數(shù)據(jù)流程。根據(jù)以上的分析,我們可以先畫出分流程圖,然后可以綜合分流程圖,畫出整個(gè)系統(tǒng)操作的業(yè)務(wù)流程圖231卡交易數(shù)據(jù)流圖消費(fèi)者辦卡基本信息輸入消費(fèi)者信息管理消費(fèi)者交易成本結(jié)算管理結(jié)算信息輸入232現(xiàn)金交易數(shù)據(jù)流圖消費(fèi)者訂餐預(yù)訂信息管理消費(fèi)查詢收款管理成本結(jié)算管理233庫存管理數(shù)據(jù)流圖成本結(jié)算管理庫存管理采購員消費(fèi)者入庫管理出庫管理入庫出庫加工庫存信息判斷234整體流圖整體流圖簡(jiǎn)圖成本結(jié)算管理消費(fèi)者信息管理庫存管理結(jié)算信息收款管理預(yù)訂信息管理整體流圖整圖24可行性分析可行性分析是系統(tǒng)分析階段的重要活動(dòng),是對(duì)系統(tǒng)進(jìn)行全面、概要的分析。它的任務(wù)是確定項(xiàng)目開發(fā)是否必要和可行。它的主要目標(biāo)是進(jìn)一步明確系統(tǒng)的目標(biāo)、規(guī)模和功能,對(duì)系統(tǒng)開發(fā)背景、必要性和意義進(jìn)行調(diào)查分析,并根據(jù)需要和可能提出擬開發(fā)系統(tǒng)的初步方案和計(jì)劃,明確問題,對(duì)所提供系統(tǒng)大致規(guī)模和目標(biāo)的幾個(gè)有關(guān)約束條件進(jìn)行論證,并且提出系統(tǒng)的邏輯模型和各種可能的方案,從而為系統(tǒng)開發(fā)項(xiàng)目的決策提供科學(xué)依據(jù)。其主要從三個(gè)方面進(jìn)行研究(1)技術(shù)可行性對(duì)現(xiàn)有技術(shù)進(jìn)行評(píng)價(jià),以明確能否利用現(xiàn)有技術(shù)進(jìn)行系統(tǒng)開發(fā)及系統(tǒng)實(shí)施。計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展和計(jì)算機(jī)硬件性價(jià)比的不斷提升,使計(jì)算機(jī)全面應(yīng)用于醫(yī)院管理的各個(gè)環(huán)節(jié)成為可能。C/S開發(fā)模式、COM、DCOM技術(shù)在國內(nèi)各行各業(yè)的信息管理系統(tǒng)開發(fā)中已經(jīng)被廣泛采用,實(shí)踐證明這些技術(shù)都非常適合食堂管理系統(tǒng)的開發(fā)。(2)經(jīng)濟(jì)可行性對(duì)組織的經(jīng)濟(jì)狀況和投資能力進(jìn)行分析,對(duì)系統(tǒng)建設(shè)、運(yùn)行和維護(hù)費(fèi)用進(jìn)行評(píng)估,對(duì)系統(tǒng)建成后可能取得的社會(huì)及經(jīng)濟(jì)效益進(jìn)行估計(jì)。連鎖餐飲企業(yè)整體規(guī)模龐大,個(gè)體規(guī)模小而營管理相對(duì)簡(jiǎn)單統(tǒng)一,開發(fā)成本不高,一旦開發(fā)成功,即能直接應(yīng)用在所有同種食堂。(3)營運(yùn)可行性指系統(tǒng)對(duì)組織機(jī)構(gòu)的影響,對(duì)現(xiàn)有人員和機(jī)構(gòu)、設(shè)施、環(huán)境等的適應(yīng)性以及進(jìn)行人員培訓(xùn)補(bǔ)充計(jì)劃的可行性。連鎖餐飲企業(yè)整體規(guī)模龐大,個(gè)體規(guī)模小而營管理相對(duì)簡(jiǎn)單統(tǒng)一。所以食堂系統(tǒng)的計(jì)算機(jī)信息管理人才、計(jì)算機(jī)硬件設(shè)備、操作員的計(jì)算機(jī)應(yīng)用能力都為系統(tǒng)的運(yùn)行過程提供了可靠保證。25數(shù)據(jù)字典由于數(shù)據(jù)流程圖只是對(duì)數(shù)據(jù)處理及彼此之間的聯(lián)系進(jìn)行說明,未對(duì)數(shù)據(jù)的詳細(xì)內(nèi)容及數(shù)據(jù)的加工過程進(jìn)行說明,而這正是數(shù)據(jù)字典所要表達(dá)的。數(shù)據(jù)字典是關(guān)于數(shù)據(jù)信息的集合,也就是對(duì)數(shù)據(jù)流程圖中包含的所有元素的定義的集合。它能將數(shù)據(jù)流程圖中全部數(shù)據(jù)流及其組成部分的數(shù)據(jù)元素、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)加工等描述清楚,便于后續(xù)工作系統(tǒng)設(shè)計(jì)的進(jìn)行。數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進(jìn)行詳細(xì)的數(shù)據(jù)收集和數(shù)據(jù)分析所獲得的主要成果。數(shù)據(jù)字典通常包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存諸和處理過程5個(gè)部分。其中數(shù)據(jù)項(xiàng)是最小組成單位,若干數(shù)據(jù)項(xiàng)組成一個(gè)數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)字典通過對(duì)數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)的定義來描述數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和邏輯內(nèi)容。針對(duì)一般食堂管理信息系統(tǒng)的需求,通過對(duì)食堂管理工作過程的內(nèi)容和數(shù)據(jù)流程分析,設(shè)計(jì)如下所示的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)名稱卡信息含義說明是消費(fèi)者這里指的是學(xué)生和教師用來使用付款的工具卡的一系列信息,它記錄了包括它本身以及持卡者的一些信息包括的數(shù)據(jù)項(xiàng)有1卡號(hào)(消費(fèi)者使用的用來付款的卡的編號(hào),與消費(fèi)者辦卡的先后順序有關(guān)別名CARD_NUMBER字符型長(zhǎng)度6)2余額(消費(fèi)者卡中所剩的金錢數(shù)量,別名BALANCE字符型長(zhǎng)度6)3辦卡日期(消費(fèi)者辦卡的日期,別名CARD_DATE日期型長(zhǎng)度8)4持卡者姓名(擁有信息卡的消費(fèi)者的名稱,別名PERSON_NAME字符型長(zhǎng)度10)5花費(fèi)(消費(fèi)者所消費(fèi)的金錢數(shù)量別名CONSUME字符型長(zhǎng)度20)數(shù)據(jù)結(jié)構(gòu)名稱學(xué)生信息含義說明消費(fèi)者群體之一,可以自由選擇消費(fèi)方式,辦過卡用卡交易或者用現(xiàn)金交易包括的數(shù)據(jù)項(xiàng)有1學(xué)號(hào)(學(xué)生在校所編的號(hào)碼別名S_NUMBER字符型長(zhǎng)度6)2系別(學(xué)生所在的系的名稱別名S_SYSTEM字符型長(zhǎng)度16)3班級(jí)(學(xué)生所在的班級(jí)的班號(hào)別名CLASS字符型長(zhǎng)度20)4姓名(學(xué)生的姓名別名S_NAME字符型長(zhǎng)度10)5性別(學(xué)生的性別別名S_SEX字符型長(zhǎng)度4)6宿舍(學(xué)生所在宿舍名稱別名S_DORM字符型長(zhǎng)度20)7聯(lián)系方式(學(xué)生的手機(jī)號(hào)碼別名S_TEL字符型長(zhǎng)度20)數(shù)據(jù)結(jié)構(gòu)名稱教師信息含義說明消費(fèi)者群體之一,可以自由選擇消費(fèi)方式,辦過卡用卡交易或者用現(xiàn)金交易包括的數(shù)據(jù)項(xiàng)有1教師號(hào)(教師的編號(hào)別名T_NUMBER字符型長(zhǎng)度6)2系別(教師所在的系的名稱別名T_SYSTEM字符型長(zhǎng)度10)3姓名(教師的姓名別名T_NAME字符型長(zhǎng)度6)4性別(教師的性別別名T_SEX字符型長(zhǎng)度4)5家庭住址(教師的家庭住址別名ADDRESS字符型長(zhǎng)度50)6聯(lián)系方式(教師的手機(jī)號(hào)碼別名T_TEL字符型長(zhǎng)度20)數(shù)據(jù)結(jié)構(gòu)名稱消費(fèi)者含義說明來到食堂消費(fèi)的人,這里指的是學(xué)生和教師包括的數(shù)據(jù)項(xiàng)有1消費(fèi)序號(hào)(消費(fèi)者來消費(fèi)的序號(hào)別名CONSUMER_NUMBER字符型長(zhǎng)度6)2姓名(消費(fèi)者的姓名別名CONSUMER_NAME字符型長(zhǎng)度10)3性別(消費(fèi)者的性別別名CONSUMER_SEX字符型長(zhǎng)度10)4消費(fèi)類別(消費(fèi)者消費(fèi)的類別,其中包括卡消費(fèi)和現(xiàn)金消費(fèi)別名CONSUME_SORT字符型長(zhǎng)度10)5消費(fèi)者類別(消費(fèi)者的類別,這里指學(xué)生或教師別名CONSUMER_SORT字符型長(zhǎng)度10)數(shù)據(jù)結(jié)構(gòu)名稱包房信息含義說明消費(fèi)者訂餐的房間的信息包括的數(shù)據(jù)項(xiàng)有1房間編號(hào)(消費(fèi)者訂餐房間所在的編號(hào)別名ROOM_NUMBER字符型長(zhǎng)度6)2房間位置(消費(fèi)者訂餐房間所在的房間位置別名ROOM_ADDRESS字符型長(zhǎng)度20)數(shù)據(jù)結(jié)構(gòu)名稱訂餐信息含義說明消費(fèi)者在訂餐時(shí)所需要的信息包括的數(shù)據(jù)項(xiàng)有1訂餐編號(hào)(消費(fèi)者訂餐的編號(hào),以便管理別名BEAT_NUMBER字符型長(zhǎng)度6)2顧客姓名(消費(fèi)者的姓名別名CONSUMER_NAME字符型長(zhǎng)度10)3聯(lián)系方式(消費(fèi)者的聯(lián)系方式(手機(jī)號(hào)碼)別名CONSUMER_TEL字符型長(zhǎng)度20)4約定時(shí)間(消費(fèi)者訂餐時(shí)所約定的吃飯時(shí)間別名BOOKTIME日期型長(zhǎng)度8)5備注信息(在訂餐時(shí)其他的信息別名REMARK_INFO文本型長(zhǎng)度50)數(shù)據(jù)結(jié)構(gòu)名稱消費(fèi)情況含義說明消費(fèi)者在食堂的消費(fèi)總體情況,用于管理員的審查工作以及預(yù)算,計(jì)算成本利潤的工作。包括的數(shù)據(jù)項(xiàng)有1一樓窗口(一樓所有窗口一天內(nèi)收入總和別名FLOOR_ONE字符型長(zhǎng)度6)2二樓窗口(二樓所有窗口一天內(nèi)收入總和別名FLOOR_TWO字符型長(zhǎng)度6)3三樓窗口(三樓所有窗口一天內(nèi)收入總和別名FLOOR_THREE字符型長(zhǎng)度6)4一天消費(fèi)總額(一天內(nèi)在食堂用餐的消費(fèi)者所花費(fèi)的總額,它的數(shù)值等于所有樓層的收入與消費(fèi)者在包房所花費(fèi)的總額別名TOTAL長(zhǎng)整型長(zhǎng)度6)5日期(記錄的日期別名DATE日期型長(zhǎng)度8)數(shù)據(jù)結(jié)構(gòu)名稱管理員信息含義說明食堂的主要負(fù)責(zé)人以及采購員,管帳人員等的信息包括的數(shù)據(jù)項(xiàng)有1管理員編號(hào)(管理員在食堂的編號(hào)別名MANAGER_NUMBER字符型長(zhǎng)度6)2姓名(管理員的姓名別名MANAGER_NAME字符型長(zhǎng)度6)3性別(管理員的性別別名MANAGER_SEX字符型長(zhǎng)度4)4家庭住址(管理員的家庭住址別名MANAGER_ADDRESS字符型長(zhǎng)度50)5聯(lián)系方式(管理員的聯(lián)系方式別名MANAGER_TEL字符型長(zhǎng)度20)6工資(管理員每個(gè)月的收入別名INCOME整型長(zhǎng)度20)數(shù)據(jù)結(jié)構(gòu)名稱庫存信息含義說明食堂的庫存中商品的信息包括的數(shù)據(jù)項(xiàng)有1商品編號(hào)(商品的編號(hào)別名TRADE_NO字符型長(zhǎng)度20)2商品名稱(商品的名稱別名TRADE_NAME字符型長(zhǎng)度20)3商品價(jià)格(商品所入庫時(shí)的價(jià)格別名PRICE整型長(zhǎng)度4)4入庫商品數(shù)量(入庫時(shí)商品的數(shù)量別名ENTER_NUMBER整型長(zhǎng)度4)5庫存商品數(shù)量(現(xiàn)在庫存的商品的數(shù)量別名STOCK_NUMBER整型長(zhǎng)度4)6入庫時(shí)間(商品入庫的時(shí)間別名ENTERTIME日期型長(zhǎng)度8)7出庫時(shí)間(商品出庫的時(shí)間別名OUTTIME日期型長(zhǎng)度8)三、概念結(jié)構(gòu)設(shè)計(jì)這一設(shè)計(jì)階段是在需求分析的基礎(chǔ)上,設(shè)計(jì)出能滿足用戶需求的各種實(shí)體,以及它們之間的關(guān)系,為后面的邏輯結(jié)構(gòu)設(shè)計(jì)打下基礎(chǔ)。將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型的過程就是概念結(jié)構(gòu)設(shè)計(jì)。它是整個(gè)數(shù)據(jù)庫設(shè)計(jì)的關(guān)鍵。概念結(jié)構(gòu)設(shè)計(jì)的特點(diǎn)是能真實(shí)、充分的反映現(xiàn)實(shí)世界,包括事物和事物的聯(lián)系,能滿足用戶對(duì)數(shù)據(jù)的處理要求,是對(duì)現(xiàn)實(shí)世界的一個(gè)真實(shí)的模型。易于理解,從而可以用它和不熟悉計(jì)算機(jī)的用戶交換意見,用戶的積極參與是數(shù)據(jù)庫設(shè)計(jì)成功的關(guān)鍵。易于改正,當(dāng)應(yīng)用環(huán)境和應(yīng)用要求改變時(shí),易于對(duì)概念模型修改和擴(kuò)充。易于向關(guān)系、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換。概念結(jié)構(gòu)是各種數(shù)據(jù)模型的共同基礎(chǔ),它比數(shù)據(jù)模型更獨(dú)立于機(jī)器、更抽象,從而更加穩(wěn)定。概念結(jié)構(gòu)是對(duì)現(xiàn)實(shí)世界的一種抽象。所謂抽象是對(duì)實(shí)際的人、物、事和概念進(jìn)行人為處理,抽取所關(guān)心的共同特性,忽略非本質(zhì)的細(xì)節(jié),并把這些特性用各種概念準(zhǔn)確的加以描述。概念結(jié)構(gòu)設(shè)計(jì)通常分為四種方法自頂向下,即首先定義全局概念結(jié)構(gòu)的框架,然后逐步細(xì)化。自底向上,即首先定義各局部應(yīng)用的概念結(jié)構(gòu),然后將它們集成起來,得到全局概念結(jié)構(gòu)。逐步擴(kuò)張,首先定義最重要的核心概念結(jié)構(gòu),然后向外擴(kuò)張?;旌喜呗?,即自頂向下和自底向上結(jié)合,用自頂向下策略設(shè)計(jì)一個(gè)全局概念結(jié)構(gòu)的框架,以它為骨架集成由自底向上策略中設(shè)計(jì)的各局部概念結(jié)構(gòu)。通常分為兩步,第一步是抽象數(shù)據(jù)并設(shè)計(jì)局部視圖,第二步是集成局部視圖,得到全局視圖。下面首先對(duì)實(shí)體和其屬性加以描述,再寫出系統(tǒng)的分ER圖,進(jìn)而合并成為整體的ER圖。31構(gòu)思ERD的四條原則原則1能獨(dú)立存在的事物,例如人、物、事、地、團(tuán)體、機(jī)構(gòu)、活動(dòng)、事項(xiàng)等等,在其有多個(gè)由基本項(xiàng)描述的特性需要關(guān)注時(shí),就應(yīng)把它作為實(shí)體。原則2兩個(gè)或多個(gè)實(shí)體間的關(guān)聯(lián)與結(jié)合,如主管、從屬、組成、占有、作用、配合、協(xié)同等等,當(dāng)需要予以關(guān)注時(shí),應(yīng)作為聯(lián)系。聯(lián)系通常是某類行為動(dòng)作,ERD中關(guān)注的是其狀態(tài)與結(jié)果而非其過程。原則3實(shí)體的屬性是實(shí)體的本質(zhì)特征。實(shí)體應(yīng)有標(biāo)識(shí)屬性(能把不同個(gè)體區(qū)分開來的屬性組),并指定其中一個(gè)作為主標(biāo)識(shí)。聯(lián)系的屬性是聯(lián)系的結(jié)果或狀態(tài)。屬性具有如下幾個(gè)特點(diǎn)A非多值性;B非復(fù)合性;C非導(dǎo)出性。而實(shí)體的屬性還應(yīng)有非關(guān)聯(lián)性。原則4(一事一地原則)所有基本項(xiàng)在同一ER圖中作為屬性要在僅在一個(gè)地方出現(xiàn)32設(shè)計(jì)ER圖根據(jù)上面的設(shè)計(jì)規(guī)劃出的實(shí)體有卡信息實(shí)體、學(xué)生信息實(shí)體、教師信息實(shí)體、消費(fèi)者實(shí)體、包房信息實(shí)體、訂餐信息實(shí)體、消費(fèi)情況實(shí)體、管理員信息實(shí)體。各個(gè)實(shí)體具體的描述ER圖及其之間的關(guān)系描述如下。321分ER圖圖31為卡信息實(shí)體ER圖卡信息卡號(hào)余額持卡者姓名辦卡日期花費(fèi)圖32為學(xué)生信息實(shí)體ER圖學(xué)生信息學(xué)號(hào)系別班級(jí)姓名宿舍聯(lián)系方式性別圖33為教師信息實(shí)體ER圖教師信息教師號(hào)系別姓名家庭住址聯(lián)系方式性別圖34為消費(fèi)者實(shí)體ER圖消費(fèi)者消費(fèi)類別消費(fèi)者類別消費(fèi)序號(hào)性別圖35為包房信息實(shí)體ER圖包房信息房間編號(hào)房間位置圖36為訂餐信息實(shí)體ER圖姓名訂餐信息訂餐編號(hào)顧客姓名聯(lián)系方式約定時(shí)間備注信息圖37為消費(fèi)情況實(shí)體ER圖消費(fèi)情況一樓窗口二樓窗口三樓窗口一天消費(fèi)總額日期圖38為管理員信息實(shí)體ER圖管理員信息管理員編號(hào)姓名家庭住址聯(lián)系方式性別工資圖39為庫存信息實(shí)體ER圖出庫時(shí)間庫存信息入庫時(shí)間商品價(jià)格商品名稱入庫商品數(shù)量庫存商品數(shù)量商品編號(hào)圖310為管理員信息實(shí)體和庫存管理實(shí)體關(guān)系ER圖N1圖311為管理員信息實(shí)體、消費(fèi)情況實(shí)體、消費(fèi)者實(shí)體關(guān)系ER圖MNN1管理員信息管理員編號(hào)姓名聯(lián)系方式家庭住址性別庫存信息出庫時(shí)間管理入庫時(shí)間商品名稱入庫商品數(shù)量庫存商品數(shù)量工資商品價(jià)格商品編號(hào)管理員信息消費(fèi)情況管理查詢聯(lián)系方式家庭住址姓名二樓窗口一樓窗口三樓窗口日期一天的消費(fèi)總額管理員編號(hào)消費(fèi)者消費(fèi)消費(fèi)者類別姓名消費(fèi)類別消費(fèi)序號(hào)性別性別工資圖312為訂餐信息實(shí)體、包房信息實(shí)體、消費(fèi)者實(shí)體關(guān)系ER圖111N圖313為卡信息實(shí)體、學(xué)生信息實(shí)體、消費(fèi)者實(shí)體關(guān)系ER圖N111包房信息訂餐信息消費(fèi)者訂餐所在顧客姓名訂餐編號(hào)備注信息約定時(shí)間聯(lián)系方式房間編號(hào)房間位置消費(fèi)者類別消費(fèi)類別消費(fèi)序號(hào)姓名性別學(xué)生信息卡信息屬于持有卡號(hào)余額辦卡日期持卡人姓名聯(lián)系方式班級(jí)學(xué)號(hào)姓名系別宿舍花費(fèi)消費(fèi)者消費(fèi)類別消費(fèi)者類別姓名消費(fèi)序號(hào)性別性別工資商品價(jià)格商品名稱圖314為卡信息實(shí)體、教師信息實(shí)體、消費(fèi)者實(shí)體關(guān)系ER圖N111322整體ER圖由上面的分ER圖可以得到整體ER圖,如下圖所示圖315為整體ER圖N111N管理員信息管理查詢消費(fèi)情況包房信息訂餐信息學(xué)生信息卡信息教師信息消費(fèi)者消費(fèi)組成屬于使用持有訂餐所在管理員編號(hào)姓名聯(lián)系方式家庭住址一樓窗口二樓窗口一天的消費(fèi)總額日期三樓窗口顧客姓名訂餐編號(hào)備注信息約定時(shí)間聯(lián)系方式房間編號(hào)房間位置消費(fèi)者類別姓名消費(fèi)類別卡號(hào)余額辦卡日期持卡人姓名聯(lián)系方式聯(lián)系方式家庭住址系別教師號(hào)姓名班級(jí)學(xué)號(hào)姓名系別宿舍花費(fèi)消費(fèi)序號(hào)庫存信息。出庫時(shí)間管理性別性別性別性別教師信息教師號(hào)系別家庭住址聯(lián)系方式屬于持有姓名卡信息持卡人姓名卡號(hào)余額辦卡日期花費(fèi)消費(fèi)者消費(fèi)類別姓名消費(fèi)序號(hào)消費(fèi)者類別性別性別MN1N111NN1111四、邏輯結(jié)構(gòu)設(shè)計(jì)現(xiàn)在需要把上面設(shè)計(jì)好的數(shù)據(jù)庫概念結(jié)構(gòu)轉(zhuǎn)化為SQLSERVER2000數(shù)據(jù)庫系統(tǒng)所支持的實(shí)際數(shù)據(jù)庫模型,也就是數(shù)據(jù)庫的邏輯結(jié)構(gòu)。41一般邏輯模型設(shè)計(jì)411由ERD導(dǎo)出一般關(guān)系模型的四條原則原則1ER圖中的每一個(gè)獨(dú)立實(shí)體變換為一個(gè)關(guān)系,其屬性變?yōu)殛P(guān)系的屬性,其主標(biāo)識(shí)變?yōu)殛P(guān)系的主碼。原則2ER圖中的從實(shí)體及相應(yīng)的“的”聯(lián)系變換為一個(gè)關(guān)系,從實(shí)體的屬性加上主體關(guān)系的主碼構(gòu)成這個(gè)關(guān)系的屬性。如果“的”聯(lián)系是11的,則以主實(shí)體關(guān)系的主碼(作為外來碼)為這個(gè)關(guān)系的主碼;如果“的”聯(lián)系是1M的,則以主實(shí)體關(guān)系的主碼加上同一主實(shí)體個(gè)體聯(lián)系的不同從屬實(shí)體個(gè)體賴以相互區(qū)分的屬性組,組成該關(guān)系的主碼。原則31M聯(lián)系通過在“多”實(shí)體關(guān)系中增加相聯(lián)系的“1”實(shí)體關(guān)系的主碼及聯(lián)系本身的屬性來表達(dá)。其中“1”實(shí)體主碼為外來碼。原則4MM聯(lián)系轉(zhuǎn)換成一個(gè)獨(dú)立的關(guān)系,被聯(lián)系實(shí)體關(guān)系的主碼(作為外來碼)和聯(lián)系本身的屬性作為該關(guān)系的屬性,被聯(lián)系實(shí)體關(guān)系的主碼組成其復(fù)合主碼。412數(shù)據(jù)庫初步的關(guān)系框架(ER圖向關(guān)系模型轉(zhuǎn)化)最多關(guān)系模型轉(zhuǎn)化庫存信息(商品編號(hào)商品名稱商品價(jià)格入庫商品數(shù)量庫存商品數(shù)量入庫時(shí)間出庫時(shí)間)管理(商品名稱管理員編號(hào))管理員信息(管理員編號(hào)姓名性別家庭住址聯(lián)系方式工資)管理查詢(管理員編號(hào)日期)消費(fèi)情況(日期一樓窗口二樓窗口三樓窗口一天消費(fèi)總額)消費(fèi)(日期消費(fèi)序號(hào))消費(fèi)者(消費(fèi)序號(hào)姓名性別消費(fèi)類別消費(fèi)者類別)訂餐(訂餐編號(hào)消費(fèi)序號(hào))訂餐信息(訂餐編號(hào)顧客姓名聯(lián)系方式約定時(shí)間備注信息)所在(訂餐編號(hào)房間編號(hào))包房信息(房間編號(hào)房間位置)屬于(學(xué)號(hào)消費(fèi)序號(hào))組成(教師號(hào)消費(fèi)序號(hào))學(xué)生信息(學(xué)號(hào)系別班級(jí)姓名性別宿舍聯(lián)系方式)使用(卡號(hào)學(xué)號(hào))卡信息(卡號(hào)余額辦卡日期持卡者姓名花費(fèi))持有(卡號(hào)教師號(hào))教師信息(教師號(hào)系別姓名性別家庭住址聯(lián)系方式)最少關(guān)系模型轉(zhuǎn)化庫存信息(商品編號(hào)商品名稱商品價(jià)格入庫商品數(shù)量庫存商品數(shù)量入庫時(shí)間出庫時(shí)間管理員編號(hào))管理員信息(管理員編號(hào)姓名性別家庭住址聯(lián)系方式工資)管理查詢(管理員編號(hào)日期)消費(fèi)情況(日期一樓窗口二樓窗口三樓窗口一天消費(fèi)總額消費(fèi)序號(hào))消費(fèi)者(消費(fèi)序號(hào)姓名性別消費(fèi)類別消費(fèi)者類別)訂餐信息(訂餐編號(hào)顧客姓名聯(lián)系方式約定時(shí)間備注信息消費(fèi)序號(hào)房間編號(hào))包房信息(房間編號(hào)房間位置)學(xué)生信息(學(xué)號(hào)系別班級(jí)姓名性別宿舍聯(lián)系方式消費(fèi)序號(hào))卡信息(卡號(hào)余額辦卡日期持卡者姓名花費(fèi)學(xué)號(hào)教師號(hào))教師信息(教師號(hào)系別姓名性別家庭住址聯(lián)系方式消費(fèi)序號(hào))413數(shù)據(jù)模型優(yōu)化數(shù)據(jù)庫邏輯設(shè)計(jì)的結(jié)果不是唯一的,為了進(jìn)一步提高數(shù)據(jù)庫應(yīng)用系統(tǒng)的性能,還應(yīng)該根據(jù)應(yīng)用需要適當(dāng)?shù)匦薷?、調(diào)整數(shù)據(jù)模型的結(jié)構(gòu),這就是數(shù)據(jù)模型的優(yōu)化。關(guān)系數(shù)據(jù)模型的優(yōu)化通常以規(guī)范化理論為指導(dǎo),方法為1、確定數(shù)據(jù)依賴2、對(duì)于各個(gè)關(guān)系模式之間的數(shù)據(jù)依賴進(jìn)行極小化處理,消除冗余的聯(lián)系冗余數(shù)據(jù)和冗余聯(lián)系容易破壞數(shù)據(jù)為的完整性,給數(shù)據(jù)庫維護(hù)增加困難,應(yīng)當(dāng)予以消除。經(jīng)過規(guī)范化理論得出,原關(guān)系模式之間的數(shù)據(jù)依賴已經(jīng)達(dá)到極小化,沒有冗余的聯(lián)系,消除冗余的ER圖稱為基本ER圖3、按照數(shù)據(jù)依賴的理論對(duì)關(guān)系模式逐一進(jìn)行分析,考察是否存在部分函數(shù)依賴,傳遞函數(shù)依賴,多值依賴等,確定各關(guān)系模式分別屬于第幾范式。4、按照需求分析階段得到的處理要求,分析對(duì)于這樣的應(yīng)用環(huán)境這些模式是否合適,確定是否要對(duì)某些模式進(jìn)行合并或分解。5、對(duì)關(guān)系模式進(jìn)行必要的分解,提高數(shù)據(jù)操作的效率和存儲(chǔ)空間的利用率。根據(jù)需求分析階段系統(tǒng)的功能分析,這樣的應(yīng)用環(huán)境,這些模式可以完成包括消費(fèi)者信息管理,預(yù)訂信息管理,成本核算管理,審查工作,庫存管理這些模塊的要求,分析結(jié)果中可在設(shè)計(jì)用戶子模式中對(duì)不同級(jí)別的用戶定義不同的VIEW。優(yōu)化后的關(guān)系模式庫存信息(商品編號(hào)商品名稱商品價(jià)格入庫商品數(shù)量庫存商品數(shù)量入庫時(shí)間出庫時(shí)間管理員編號(hào))管理員信息(管理員編號(hào)姓名性別家庭住址聯(lián)系方式工資)管理查詢(管理員編號(hào)日期)消費(fèi)情況(日期一樓窗口二樓窗口三樓窗口一天消費(fèi)總額消費(fèi)序號(hào))消費(fèi)者(消費(fèi)序號(hào)姓名性別消費(fèi)類別消費(fèi)者類別)訂餐信息(訂餐編號(hào)顧客姓名聯(lián)系方式約定時(shí)間備注信息消費(fèi)序號(hào)房間編號(hào))包房信息(房間編號(hào)房間位置)屬于(學(xué)號(hào)消費(fèi)序號(hào))組成(教師號(hào)消費(fèi)序號(hào))學(xué)生信息(學(xué)號(hào)系別班級(jí)姓名性別宿舍聯(lián)系方式)使用(卡號(hào)學(xué)號(hào))卡信息(卡號(hào)余額辦卡日期持卡者姓名花費(fèi))持有(卡號(hào)教師號(hào))教師信息(教師號(hào)系別姓名性別家庭住址聯(lián)系方式)42具體邏輯模型設(shè)計(jì)在上面的實(shí)體以及實(shí)體之間關(guān)系的基礎(chǔ)上,形成數(shù)據(jù)庫中的表格以及各個(gè)表格之間的關(guān)系。食堂管理系統(tǒng)數(shù)據(jù)庫中各個(gè)表格的設(shè)計(jì)結(jié)果如下面的幾個(gè)表格所示。每個(gè)表格表示在數(shù)據(jù)庫中的一個(gè)表。表41為創(chuàng)建庫存信息表STOCK創(chuàng)建庫存信息表STOCK列名數(shù)據(jù)類型可否為空說明聲明TRADE_NOVARCHAR20NOTNULL商品編號(hào)主鍵TRADE_NAMEVARCHAR20NULL商品名稱建立聚簇索引PRICEINT4NULL商品價(jià)格ENTER_NUMBERINT4NULL入庫商品數(shù)量STOCK_NUMBERINT4NULL庫存商品數(shù)量建立聚簇索引ENTERTIMEDATETIME8NULL入庫時(shí)間建立唯一索引OUTTIMEDATETIME8NULL出庫時(shí)間MANAGER_NUMBERVARCHAR6NOTNULL管理員編號(hào)外鍵表42為創(chuàng)建管理員信息表MANAGER創(chuàng)建管理員信息表MANAGER列名數(shù)據(jù)類型可否為空說明聲明MANAGER_NUMBERVARCHAR6NOTNULL管理員編號(hào)主鍵MANAGER_NAMEVARCHAR6NOTNULL姓名MANAGER_SEXVARCHAR4NULL性別MANAGER_ADDRESSVARCHAR50NULL家庭住址MANAGER_TELVARCHAR20NULL聯(lián)系方式INCOMEINTNULL工資表43為創(chuàng)建消費(fèi)情況表CONSUMESITUATION創(chuàng)建消費(fèi)情況表CONSUMESITUATION列名數(shù)據(jù)類型可否為空說明聲明DATEDATETIMENOTNULL日期主鍵建立唯一索引TOTALBIGINTNULL一天消費(fèi)總額建立聚簇索引FLOOR_ONEVARCHAR6NULL一樓窗口FLOOR_TWOVARCHAR6NULL二樓窗口FLOOR_THREEVARCHAR6NULL三樓窗口CONSUMER_NUMBERVARCHAR6NOTNULL消費(fèi)序號(hào)外鍵表44為創(chuàng)建消費(fèi)者表CONSUMER創(chuàng)建消費(fèi)者表CONSUMER列名數(shù)據(jù)類型可否為空說明聲明CONSUMER_NUMBERVARCHAR6NOTNULL消費(fèi)序號(hào)主鍵CONSUMER_NAMEVARCHAR10NOTNULL姓名CONSUMER_SEXVARCHAR4NULL性別CONSUME_SORTVARCHAR10NULL消費(fèi)類別CONSUMER_SORTVARCHAR10NULL消費(fèi)者類別表45為創(chuàng)建訂餐信息表BOOK_EAT創(chuàng)建訂餐信息表BOOK_EAT列名數(shù)據(jù)類型可否為空說明聲明BEAT_NUMBERVARCHAR6NOTNULL訂餐編號(hào)主鍵CONSUMER_NAMEVARCHAR10NOTNULL顧客姓名建立聚簇索引CONSUMER_TELVARCHAR20NULL聯(lián)系方式BOOKTIMEDATETIME8NULL約定時(shí)間建立聚簇索引REMARK_INFOTEXT50NULL備注信息CONSUMER_NUMBERVARCHAR6NOTNULL消費(fèi)序號(hào)外鍵建立唯一索引ROOM_NUMBERVARCHAR6NOTNULL房間編號(hào)外鍵表46為創(chuàng)建包房信息表ROOMINFO創(chuàng)建包房信息表ROOMINFO列名數(shù)據(jù)類型可否為空說明聲明ROOM_NUMBERVARCHAR6NOTNULL房間編號(hào)主鍵ROOM_ADDRESSVARCHAR20NOTNULL房間位置表47為創(chuàng)建學(xué)生信息表STUDENT創(chuàng)建學(xué)生信息表STUDENT列名數(shù)據(jù)類型可否為空說明聲明S_NUMBERVARCHAR6NOTNULL學(xué)號(hào)主鍵S_NAMEVARCHAR10NOTNULL姓名建立聚簇索引S_SEXVARCHAR4NULL性別CLASSVARCHAR20NULL班級(jí)S_SYSTEMVARCHAR16NULL系別S_DORMVARCHAR20NULL宿舍S_TELVARCHAR20NULL聯(lián)系方式表48為創(chuàng)建卡信息表CARD創(chuàng)建卡信息表CARD列名數(shù)據(jù)類型可否為空說明聲明CARD_NUMBERVARCHAR6NOTNULL卡號(hào)主鍵建立唯一索引BALANCEVARCHAR6NOTNULL余額建立聚簇索引CARD_DATEDATETIME(8)NULL辦卡日期PERSON_NAMEVARCHAR10NULL持卡者姓名CONSUMEVARCHAR20NULL花費(fèi)建立聚簇索引表49為創(chuàng)建教師信息表TEACHER創(chuàng)建教師信息表TEACHER列名數(shù)據(jù)類型可否為空說明聲明T_NUMBERVARCHAR6NOTNULL教師號(hào)主鍵T_NAMEVARCHAR6NOTNULL姓名建立聚簇索引T_SEXVARCHAR4NULL性別T_SYSTEMVARCHAR20NULL系別ADDRESSVARCHAR20NULL家庭住址T_TELVARCHAR50NULL聯(lián)系方式表410為創(chuàng)建管理查詢表MANAGE創(chuàng)建管理查詢表MANAGE列名數(shù)據(jù)類型可否為空說明MANAGER_NUMBERVARCHAR6NOTNULL管理員編號(hào)DATEDATETIMENOTNULL日期表411為創(chuàng)建屬于表ATTRIBUTE創(chuàng)建屬于表ATTRIBUTE列名數(shù)據(jù)類型可否為空說明S_NUMBERVARCHAR6NOTNULL學(xué)號(hào)CONSUMER_NUMBERVARCHAR6NOTNULL消費(fèi)序號(hào)表412為創(chuàng)建組成表COMPOSE創(chuàng)建組成表COMPOSE列名數(shù)據(jù)類型可否為空說明T_NUMBERVARCHAR6NOTNULL教師號(hào)CONSUMER_NUMBERVARCHAR6NOTNULL消費(fèi)序號(hào)表413為創(chuàng)建使用表USE創(chuàng)建使用表USE列名數(shù)據(jù)類型可否為空說明S_NUMBERVARCHAR8NOTNULL學(xué)號(hào)CARD_NUMBERVARCHAR6NOTNULL卡號(hào)表414為創(chuàng)建持有表HOLD創(chuàng)建持有表HOLD列名數(shù)據(jù)類型可否為空說明CARD_NUMBERVARCHAR6NOTNULL卡號(hào)T_NUMBERVARCHAR6NOTNULL教師號(hào)43設(shè)計(jì)用戶子模式將概念模型轉(zhuǎn)換為全局邏輯模型后,還應(yīng)該根據(jù)局部應(yīng)用需求,結(jié)合具體DBMS的特點(diǎn),設(shè)計(jì)用戶的外模式。目前關(guān)系數(shù)據(jù)庫管理系統(tǒng)一般都提供了視圖(VIEW)概念,可以利用這一功能設(shè)計(jì)更符合局部用戶需要的用戶外模式。定義數(shù)據(jù)庫全局模式主要是從系統(tǒng)的時(shí)間效率、空間效率、易維護(hù)等角度出發(fā)。由于用戶外模式與模式是相對(duì)獨(dú)立的,因此在定義用戶外模式時(shí)可以注重考慮用戶的習(xí)慣與方便。包括1使用更符合用戶習(xí)慣的別名。在合并各分ER圖時(shí),曾做了消除命名沖突的工作,以使數(shù)據(jù)庫系統(tǒng)中同一關(guān)系和屬性具有唯一的名字。這在設(shè)計(jì)數(shù)據(jù)庫整體結(jié)構(gòu)時(shí)是非常必要的。用VIEW機(jī)制可以在設(shè)計(jì)用戶VIEW時(shí)重新定義某些屬性名,使其與用戶一致,以方便使用。2可以對(duì)不同級(jí)別的用戶定義不同的VIEW,以保證系統(tǒng)的安全性。3簡(jiǎn)化用戶對(duì)系統(tǒng)的使用。如果某些局部應(yīng)用中經(jīng)常要使用某些很復(fù)雜的查詢,為了方便用戶,可以將這些復(fù)雜查詢定義為視圖,用戶每次只對(duì)定義好的視圖進(jìn)行查詢,大大簡(jiǎn)化了用戶的使用消費(fèi)者查詢信息所建立的視圖1消費(fèi)者查詢自己卡中余額學(xué)生查詢視圖S_BALANCE教師查詢視圖T_BALANCE2消費(fèi)者查詢自己的訂餐信息管理員查詢信息所建立的視圖1食堂買商品所需金錢數(shù)量2食堂每個(gè)月發(fā)給職工的工資總和3管理員查詢消費(fèi)者信息查詢學(xué)生的信息查詢教師的信息五、物理結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫在物理設(shè)備上的存儲(chǔ)結(jié)構(gòu)與存取方法稱為數(shù)據(jù)庫物理的物理結(jié)構(gòu),它依賴于選定的數(shù)據(jù)庫管理系統(tǒng)。為一個(gè)給定的邏輯數(shù)據(jù)模型選取最適合應(yīng)用要求的物理結(jié)構(gòu)的過程,就是數(shù)據(jù)庫的物理設(shè)計(jì)。數(shù)據(jù)庫的物理設(shè)計(jì)通常分為兩步1確定數(shù)據(jù)庫的物理結(jié)構(gòu),在關(guān)系數(shù)據(jù)庫中主要指存取方法和存儲(chǔ)結(jié)構(gòu);2對(duì)物理結(jié)構(gòu)進(jìn)行評(píng)價(jià),評(píng)價(jià)的重點(diǎn)是時(shí)間和空間效率。如果評(píng)價(jià)結(jié)果滿足原設(shè)計(jì)要求,則可進(jìn)入到物理實(shí)施階段,否則,就需要重新設(shè)計(jì)或修改物理結(jié)構(gòu),有時(shí)甚至要返回邏輯設(shè)計(jì)階段修改數(shù)據(jù)模型。61建立索引建立索引是加快查詢速度的有效手段。用戶可以根據(jù)應(yīng)用環(huán)境的需要,在基本表上建立一個(gè)或多個(gè)索引,以提供多種存取路徑,加快查找速度。一般來說,建立與刪除索引由數(shù)據(jù)庫管理員DBA或表的屬主(OWNER),即建立表的人,負(fù)責(zé)完成。系統(tǒng)在存取數(shù)據(jù)時(shí)會(huì)自動(dòng)選擇合適的索引作為存取路徑,用戶不必也不能顯示地選擇索引。索引的選擇方法,一般來說1如果一個(gè)或一組屬性經(jīng)常在查詢條件中出現(xiàn),則考慮在這個(gè)或這組屬性上建立索引或組合索引;2如果一個(gè)屬性經(jīng)常作為最大值或最小值等聚集函數(shù)的參數(shù),則考慮在這個(gè)屬性上建立索引;由上所述建立以下索引為庫存信息表STOCK建立索引1按TRADE_NAME,STOCK_NUMBER,建立聚簇索引,2按ENTERTIME升序,建立唯一索引為消費(fèi)情況表CONSUMESITUATION建立索引1按TOTAL建立聚簇索引2按DATE升序,建立唯一索引為訂餐信息表BOOK_EAT建立索引1按CONSUMER_NAME,BOOKTIME建立聚簇索引2按CONSUMER_NUMBER升序,建立唯一索引為卡信息表CARD建立索引1按BALANCE,CONSUME建立聚簇索引2按CARD_NUMBER升序,建立唯一索引為學(xué)生信息表STUDENT建立索引1按S_NAME建立聚簇索引為學(xué)生信息表TEACHER建立索引1按T_NAME建立聚簇索引62建立觸發(fā)器觸發(fā)器(TRIGGER)是用戶定義在表上的一類由事件驅(qū)動(dòng)的特殊過程。一旦定義,任何用戶對(duì)表的增、刪、改操作均由服務(wù)器自動(dòng)激活相應(yīng)得觸發(fā)器,在DBMS核心層進(jìn)行集中的完整性控制。觸發(fā)器類似于約束,但是比約束更加靈活,可以實(shí)施比FOREIGNKEY約束,CHECK約束更為復(fù)雜的檢查和操作,具有更精細(xì)和更強(qiáng)大的數(shù)據(jù)控制能力。觸發(fā)器的執(zhí)行,是由觸發(fā)事件激活的,并由數(shù)據(jù)庫服務(wù)器自動(dòng)執(zhí)行的。一個(gè)數(shù)據(jù)表上可能定義了多個(gè)觸發(fā)器,比如BEFORE觸發(fā)器,多個(gè)AFTER觸發(fā)器等。同一個(gè)表上的多個(gè)觸發(fā)器激活時(shí)遵循如下執(zhí)行順序(1)執(zhí)行該表上的BEFORE觸發(fā)器;(2)激活觸發(fā)器的SQL語句;(3)執(zhí)行該表上的AFTER觸發(fā)器。對(duì)于同一個(gè)表上的多個(gè)BEFORE(AFTER)觸發(fā)器,遵循“誰先創(chuàng)建誰先執(zhí)行”的原則,即按照觸發(fā)器創(chuàng)建的先后順序執(zhí)行。有些RDBMS是按照觸發(fā)器的名稱的字母排序順序執(zhí)行觸發(fā)器。定義AFTER行級(jí)觸發(fā)器,當(dāng)管理員表MANAGER的工資發(fā)生變化后就自動(dòng)在工資變化表INC_LOG中增加一條相應(yīng)的記錄首先建立工資變化表INC_LOGCREATETABLEINC_LOGMANAGER_NUMBERVARCHAR6REFERENCESMANAGERMANAGER_NUMBER,INCOMEINT,MANAGER_NAMEVARCHAR6,DATETIMESTAMP接著建立觸發(fā)器INSERT_INCCREATETRIGGERINSERT_INCAFTERINSERTONMANAGERFOREACHROWASBEGININSERTINTOINC_LOGVALUESNEWMANAGER_NUMBER,NEWINCOME,CURRENT_USER,CURRENT_TIMESTAMPENDCREATETRIGGERUPDATE_INCAFTERUPDATEONMANAGERFOREACHROWASBEGINIFNEWINCOMEOLDINCOMETHENINSERTINTOINC_LOGVALUESNEWMANAGER_NUMBER,NEWINCOME,CURRENT_USER,CURRENT_TIMESTAMPENDIFEND六、數(shù)據(jù)庫結(jié)構(gòu)的實(shí)現(xiàn)經(jīng)過前面的系統(tǒng)需求分析和概念結(jié)構(gòu)設(shè)計(jì)以后,得到數(shù)據(jù)庫邏輯結(jié)構(gòu),數(shù)據(jù)庫物理結(jié)構(gòu)。現(xiàn)在就可以在SQLSERVER2000數(shù)據(jù)庫系統(tǒng)中,實(shí)現(xiàn)上面設(shè)計(jì)的數(shù)據(jù)庫結(jié)構(gòu)。這一步是利用SQLSERVER2000數(shù)據(jù)庫系統(tǒng)中的SQL查詢分析器實(shí)現(xiàn)的。61數(shù)據(jù)定義關(guān)系數(shù)據(jù)庫系統(tǒng)支持三級(jí)模式結(jié)構(gòu),其模式、外模式和內(nèi)模式中的基本對(duì)象有表、視圖和索引。因此SQL的數(shù)據(jù)定義功能包括模式定義、表定義、視圖和索引的定義,如下表所示。表61SQL的數(shù)據(jù)定義語句操作方式操作對(duì)象創(chuàng)建刪除修改表CREATETABLEDROPTABLE視圖CREATEVIEWDROPVIEWALTERTABLE索引CREATEINDEXDROPINDEX611創(chuàng)建表格SQL語句下面給出創(chuàng)建這些表格的SQL語句1為創(chuàng)建庫存信息表STOCKCREATETABLESTOCKTRADE_NOVARCHAR20PRIMARYKEY,TRADE_NAMEVARCHAR20,PRICEINT,ENTER_NUMBERINT,STOCK_NUMBERINT,ENTERTIMEDATETIME,OUTTIMEDATETIME,MANAGER_NUMBERVARCHAR6NOTNULL,FOREIGNKEYMANAGER_NUMBERREFERENCESMANAGERMANAGER_NUMBER,2為創(chuàng)建管理員信息表MANAGERCREATETABLEMANAGERMANAGER_NUMBERVARCHAR6PRIMARYKEY,MANAGER_NAMEVARCHAR6NOTNULL,MANAGER_SEXVARCHAR4,MANAGER_ADDRESSVARCHAR50,MANAGER_TELVARCHAR20,INCOMEINT3為創(chuàng)建消費(fèi)情況表CONSUMESITUATIONCREATETABLECONSUMESITUATIONDATEDATETIMEPRIMARYKEY,TOTALBIGINTNOTNULL,FLOOR_ONEVARCHAR6,FLOOR_TWOVARCHAR6,FLOOR_THREEVARCHAR6,CONSUMER_NUMBERVARCHAR6NOTNULL,FOREIGNKEYCONSUMER_NUMBERREFERENCESCONSUMERCONSUMER_NUMBER,4為創(chuàng)建消費(fèi)者表CONSUMERCREATETABLECONSUMERCONSUMER_NUMBERVARCHAR6PRIMARYKEY,CONSUMER_NAMEVARCHAR10NOTNULL,CONSUMER_SEXVARCHAR4,CONSUME_SORTVARCHAR10,CONSUMER_SORTVARCHAR10,5為創(chuàng)建訂餐信息表BOOK_EATCREATETABLEBOOK_EATBEAT_NUMBERVARCHAR6PRIMARYKEY,CONSUMER_NAMEVARCHAR10NOTNULL,CONSUMER_TELVARCHAR20,BOOKTIMEDATETIME,REMARK_INFOTEXT,CONSUMER_NUMBERVARCHAR6NOTNULL,ROOM_NUMBERVARCHAR6NOTNULL,FOREIGNKEYCONSUMER_NUMBERREFERENCESCONSUMERCONSUMER_NUMBER,FOREIGNKEYROOM_NUMBERREFERENCESROOMINFOROOM_NUMBER,6為創(chuàng)建包房信息表ROOMINFOCREATETABLEROOMINFOROOM_NUMBERVARCHAR6PRIMARYKEY,ROOM_ADDRESSVARCHAR20NOTNULL,7為創(chuàng)建學(xué)生信息表STUDENTCREATETABLESTUDENTS_NUMBERVARCHAR8PRIMARYKEY,S_NAMEVARCHAR10NOTNULL,S_SEXVARCHAR4,CLASSVARCHAR20,S_SYSTEMVARCHAR16,S_DORMVARCHAR20,S_TELVARCHAR20,8為創(chuàng)建卡信息表CARDCREATETABLECARDCARD_NUMBERVARCHAR6PRIMARYKEY,BALANCEVARCHAR6NOTNULL,CARD_DATEDATETIME,PERSON_NAMEVARCHAR10,CONSUMEVARCHAR20,9為創(chuàng)建教師信息表TEACHERCREATETABLETEACHERT_NUMBERVARCHAR6PRIMARYKEY,T_NAMEVARCHAR6NOTNULL,T_SEXVARCHAR4,T_SYSTEMVARCHAR20,ADDRESSVARCHAR20,T_TELVARCHAR50,10為創(chuàng)建管理查詢表MANAGECREATETABLEMANAGEMANAGER_NUMBERVARCHAR6NOTNULL,DATEDATETIMENOTNULL,PRIMARYKEYMANAGER_NUMBER,DATE,FOREIGNKEYMANAGER_NUMBERREFERENCESMANAGERMANAGER_NUMBER,FOREIGNKEYDATEREFERENCESCONSUMESITUATIONDATE11為創(chuàng)建屬于表ATTRIBUTECREATETABLEATTRIBUTES_NUMBERVARCHAR8NOTNULL,CONSUMER_NUMBERVARCHAR6NOTNULL,PRIMARYKE

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論