版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 摘 要</b></p><p> 數(shù)據(jù)庫是數(shù)據(jù)管理的最新技術(shù),是計(jì)算機(jī)科學(xué)的重要分支。今天,信息資源已成為各個(gè)部門的重要財(cái)富和資源。建立一個(gè)滿足各級(jí)部門信息處理要求的行之有效的信息系統(tǒng)也成為一個(gè)企業(yè)或組織生存和發(fā)展的重要條件。對工廠管理部門而言,以前單一的手工檢索已不能滿足人們的要求,往往是投入了大量的人力和財(cái)力卻得不到高效的管理效率。為了便于工廠信息資料的
2、管理需要有效的工廠管理軟件,減輕工作人員的工作量,方便工作人員對它的操作,提高管理的質(zhì)量和水平,做到高效、智能化管理,達(dá)到提高工廠信息檢索效率的目的。采用數(shù)據(jù)庫技術(shù)生成的工廠管理系統(tǒng)將會(huì)極大地方便并簡化圖管理人員和工作人員的勞動(dòng),使工作人員從繁忙、復(fù)雜的工作進(jìn)入到一個(gè)簡單、高效的工作中?;谶@個(gè)問題,開發(fā)了工廠管理系統(tǒng)。系統(tǒng)采用C/S模式,實(shí)現(xiàn)了工廠信息更新與查詢的方便、高效性、有效性和及時(shí)性。本文通過作者設(shè)計(jì)和開發(fā)一個(gè)中小型工廠管理系
3、統(tǒng)的實(shí)踐,闡述了工廠管理軟件中所應(yīng)具有的基本功能、設(shè)計(jì)、實(shí)現(xiàn)。</p><p> 關(guān)鍵字:工廠管理,數(shù)據(jù)庫技術(shù),功能</p><p><b> 目 錄</b></p><p><b> 引 言1</b></p><p> 第一章 需求分析階段2</p><p>
4、;<b> 1.1 引言2</b></p><p> 1.2 需求分析階段的目標(biāo)與任務(wù)2</p><p> 1.2.1 處理對象2</p><p> 1.2.2 處理功能及要求3</p><p> 1.2.3 安全性及完整性要求3</p><p> 1.3 需求分析階段成果
5、3</p><p> 1.3.1 體會(huì)和心得3</p><p> 1.3.2 工廠管理系統(tǒng)業(yè)務(wù)流程圖4</p><p> 1.3.3 工廠管理系統(tǒng)數(shù)字字典4</p><p> 第二章 概念設(shè)計(jì)階段7</p><p><b> 2.1 引言7</b></p><
6、;p> 2.2 任務(wù)與目標(biāo)7</p><p> 2.3 階段結(jié)果7</p><p> 第三章 邏輯設(shè)計(jì)階段12</p><p> 3.1邏輯設(shè)計(jì)的任務(wù)和目標(biāo)12</p><p> 3.2數(shù)據(jù)組織12</p><p> 3.2.1將E-R圖轉(zhuǎn)換為關(guān)系模型12</p><p
7、> 3.2.2 模型分析13</p><p> 3.2.3 用戶子模式定義13</p><p> 第四章 物理設(shè)計(jì)階段15</p><p> 4.1物理設(shè)計(jì)階段的目標(biāo)與任務(wù)15</p><p> 4.2數(shù)據(jù)存儲(chǔ)方面15</p><p> 第五章 數(shù)據(jù)庫實(shí)施階段16</p>&
8、lt;p> 5.1建立數(shù)據(jù)庫、數(shù)據(jù)表、視圖、索引16</p><p> 5.1.1 建立數(shù)據(jù)庫16</p><p> 5.1.2 建立數(shù)據(jù)表16</p><p> 5.1.3 建立視圖19</p><p> 5.1.4 建立索引20</p><p> 5.1.5 建立觸發(fā)器20</p
9、><p> 5.1.6 數(shù)據(jù)庫備份與恢復(fù)21</p><p> 5.1.7 創(chuàng)建登錄名、用戶以及授予用戶權(quán)限22</p><p> 5.2數(shù)據(jù)入庫22</p><p> 5.3創(chuàng)建各個(gè)功能的存儲(chǔ)過程22</p><p> 第六章 設(shè)計(jì)總結(jié)23</p><p><b>
10、 參考文獻(xiàn)24</b></p><p> 附錄1 存儲(chǔ)過程定義25</p><p> 附錄2 數(shù)據(jù)查看和存儲(chǔ)過程功能的驗(yàn)證28</p><p><b> 引 言</b></p><p> 在社會(huì)進(jìn)入信息化時(shí)代以來,信息產(chǎn)業(yè)所創(chuàng)造的社會(huì)價(jià)值漸漸地開始占據(jù)社會(huì)體系中不可替代的位置。人們也漸漸明白了信
11、息和知識(shí)更新的重要性,在這個(gè)信息更新快速的社會(huì),信息代表著價(jià)值,管理好信息也就意味著非常重要,好的管理機(jī)制帶來效率,效率象征著競爭力,象征著效益,一個(gè)好的管理系統(tǒng)對于一個(gè)工廠來說是至關(guān)重要的,它是一個(gè)工廠的生命線。</p><p> 在計(jì)算機(jī)日益普及的今天,建立一個(gè)滿足各級(jí)部門信息處理要求的行之有效的信息系統(tǒng)也成為一個(gè)企業(yè)或組織生存和發(fā)展的重要條件。對工廠管理部門而言,以前單一的手工檢索已不能滿足人們的要求,往
12、往是投入了大量的人力和財(cái)力卻得不到高效的管理效率。為了便于工廠信息資料的管理需要有效的工廠管理軟件,減輕工作人員的工作量,方便工作人員對它的操作,提高管理的質(zhì)量和水平,做到高效、智能化管理,達(dá)到提高工廠信息檢索效率的目的。采用數(shù)據(jù)庫技術(shù)生成的工廠管理系統(tǒng)將會(huì)極大地方便并簡化圖管理人員和工作人員的勞動(dòng),使工作人員從繁忙、復(fù)雜的工作進(jìn)入到一個(gè)簡單、高效的工作中。</p><p> 本文以工廠管理系統(tǒng)開發(fā)過程為背景,
13、全文分為目錄、需求分析、概要設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì),以及系統(tǒng)的實(shí)現(xiàn)等全過程。在程序設(shè)計(jì)與調(diào)試上采用了自上而下,逐步細(xì)化,逐步完善的原則。采用結(jié)構(gòu)化的功能模塊設(shè)計(jì)系統(tǒng)功能,可讀性好,易于擴(kuò)充。基本功能全面,系統(tǒng)可讀性好,易于維護(hù)、更新,安全性好。</p><p> 第一章 需求分析階段</p><p><b> 1.1 引言</b></p><
14、p> 在進(jìn)行系統(tǒng)設(shè)計(jì)之前,首先要對系統(tǒng)的現(xiàn)狀進(jìn)行分析。根據(jù)系統(tǒng)的目標(biāo)、需求和功能,制定和選擇一個(gè)較好的系統(tǒng)方案,從而達(dá)到一個(gè)合理的優(yōu)化系統(tǒng)。</p><p> 需求分析是在于要弄清用戶對開發(fā)的數(shù)據(jù)庫應(yīng)用系統(tǒng)的確切要求。數(shù)據(jù)庫設(shè)計(jì)的第一步是明確數(shù)據(jù)庫的目的和如何使用,也就是說需要從數(shù)據(jù)庫中得到哪些信息。明確目的之后,就可以確定您需要保存哪些主題的信息(表),以及每個(gè)主題需要保存哪些信息(表中字段)。<
15、;/p><p> 在構(gòu)造系統(tǒng)時(shí),首先從需求出發(fā)構(gòu)造數(shù)據(jù)庫表,然后再由數(shù)據(jù)庫表結(jié)合需求劃分系統(tǒng)功能模塊。這樣,就把一個(gè)大的系統(tǒng)分解成了幾個(gè)小系統(tǒng)。這里把系統(tǒng)的層次劃分為了五個(gè)部分:倉庫管理、車間管理、工人管理、產(chǎn)品管理、零件管理。能夠?qū)崿F(xiàn)以下功能:</p><p> 1.更新和查詢倉庫信息</p><p> 2.更新和查詢車間信息</p><p&
16、gt; 3.更新和查詢工人信息</p><p> 4.更新和查詢產(chǎn)品信息</p><p> 5.更新和查詢零件信息</p><p> 1.2 需求分析階段的目標(biāo)與任務(wù)</p><p> 1.2.1 處理對象</p><p><b> 工廠:廠名、廠長名</b></p>&
17、lt;p> 車間:車間號(hào)、車間主任姓名、車間主任地址、車間主任電話</p><p> 生產(chǎn)產(chǎn)品:車間號(hào)、產(chǎn)品號(hào)、產(chǎn)品數(shù)量、開始生產(chǎn)時(shí)間、生產(chǎn)截止時(shí)間</p><p> 生產(chǎn)零件:車間號(hào)、零件號(hào)、零件數(shù)量、開始生產(chǎn)時(shí)間、生產(chǎn)截止時(shí)間</p><p> 工人:職工號(hào)、職工姓名、職工年齡、職工性別、工種、工作車間號(hào)</p><p>
18、 產(chǎn)品:產(chǎn)品號(hào)、產(chǎn)品名稱、產(chǎn)品價(jià)格、零件號(hào)、零件數(shù)量</p><p> 零件:零件號(hào)、價(jià)格重量、價(jià)格價(jià)格</p><p> 倉庫:倉庫號(hào)、倉庫主任姓名、倉庫主任電話</p><p> 儲(chǔ)存產(chǎn)品:倉庫號(hào)、產(chǎn)品號(hào)、產(chǎn)品數(shù)量</p><p> 儲(chǔ)存零件:倉庫號(hào)、零件號(hào)、零件數(shù)量</p><p> 1.2.2 處理功
19、能及要求</p><p> 1.能夠存儲(chǔ)一定數(shù)量的工廠信息,并方便有效的進(jìn)行相應(yīng)的數(shù)據(jù)操作和管理,這主要包括:</p><p> 1) 工廠信息的錄入、刪除及修改。</p><p> 2) 工廠信息的多關(guān)鍵字檢索查詢。</p><p> 2.能夠提供一定的安全機(jī)制,提供數(shù)據(jù)信息授權(quán)訪問,防止隨意刪改、查詢。</p>
20、<p> 3.對查詢、統(tǒng)計(jì)的結(jié)果能夠列表顯示。</p><p> 1.2.3 安全性及完整性要求</p><p><b> 1) 安全性要求 </b></p><p> 系統(tǒng)安全性要求體現(xiàn)在數(shù)據(jù)庫安全性、信息安全性和系統(tǒng)平臺(tái)的安全性等方面。安全性先通過視圖機(jī)制,不同的用戶只能訪問系統(tǒng)授權(quán)的視圖,這樣可提供系統(tǒng)數(shù)據(jù)一定程度上的安
21、全性,再通過分配權(quán)限、設(shè)置權(quán)限級(jí)別來區(qū)別對待不同操作者對數(shù)據(jù)庫的操作來提高數(shù)據(jù)庫的安全性;系統(tǒng)平臺(tái)的安全性體現(xiàn)在操作系統(tǒng)的安全性、計(jì)算機(jī)系統(tǒng)的安全性和網(wǎng)絡(luò)體系的安全性等方面。</p><p><b> 2) 完整性要求</b></p><p> 系統(tǒng)完整性要求系統(tǒng)中數(shù)據(jù)的正確性以及相容性??赏ㄟ^建立主、外鍵,使用check約束,或者通過使用觸發(fā)器和級(jí)聯(lián)更新。<
22、;/p><p> 1.3 需求分析階段成果</p><p> 1.3.1 體會(huì)和心得</p><p> 在需求分析這個(gè)階段,由于環(huán)境的限制,我主要途徑是通過上網(wǎng)查詢工廠相關(guān)信息和自己生活中的一些積累,由于這是第一次做這樣的一個(gè)需求分析,剛開始的時(shí)候,不知道從何下手,通過向老師、學(xué)長、同學(xué)的學(xué)習(xí)和討論,慢慢地開始理清了思路,然后集中精力在網(wǎng)上了解工廠管理方面的問題和
23、相關(guān)的一些操作,在設(shè)計(jì)E—R圖的時(shí)候遇到過一些麻煩,通過老師對我的知道,終于還是順利的完成了這個(gè)階段的任務(wù)。</p><p> 1.3.2 工廠管理系統(tǒng)業(yè)務(wù)流程圖</p><p> 表1.1 業(yè)務(wù)流程圖</p><p> 1.3.3 工廠管理系統(tǒng)數(shù)字字典</p><p> 1.數(shù)據(jù):系統(tǒng)涉及的數(shù)據(jù)項(xiàng)一共39項(xiàng)</p>&
24、lt;p> 表1.2 數(shù)據(jù)項(xiàng)列表</p><p><b> 2.數(shù)據(jù)結(jié)構(gòu):</b></p><p> 表1.3 數(shù)據(jù)結(jié)構(gòu)列表</p><p><b> 3.處理邏輯描述</b></p><p><b> 1.4處理邏輯列表</b></p><
25、p> 第二章 概念設(shè)計(jì)階段</p><p><b> 2.1 引言</b></p><p> 工廠管理系統(tǒng)的主要目標(biāo)是方便對工廠信息的管理和更新,實(shí)現(xiàn)工廠信息管理的系統(tǒng)化和自動(dòng)化,使得工廠管理高度一體化,從而提高工廠生產(chǎn)效益。</p><p> 主要任務(wù)是對倉庫信息、車間信息、工人信息、產(chǎn)品和產(chǎn)品生產(chǎn)信息、零件和零件生產(chǎn)信息的操作
26、及處理。</p><p> 概念設(shè)計(jì)階段主要是將需求分析階段得到的用戶需求抽象為信息結(jié)構(gòu)(概念模型)的過程,它是整個(gè)數(shù)據(jù)庫設(shè)計(jì)的關(guān)鍵。</p><p><b> 2.2 任務(wù)與目標(biāo)</b></p><p> ?。?)設(shè)計(jì)分E-R圖,即各子模塊的E-R圖;</p><p> ?。?)生成初步E-R圖,通過合并方法,做到
27、各子系統(tǒng)實(shí)體、屬性、聯(lián)系統(tǒng)一;</p><p> ?。?)生成全局E-R圖,通過消除沖突等方法。</p><p><b> 2.3 階段結(jié)果</b></p><p> ?。?)各個(gè)子模塊的E-R圖:</p><p> 圖2.1 倉庫信息E-R圖</p><p> 圖2.2 產(chǎn)品信息E-R圖&
28、lt;/p><p> 圖2.3 車間信息E-R圖</p><p> 圖2.4 產(chǎn)品儲(chǔ)存信息E-R圖</p><p> 圖2.5 零件儲(chǔ)存信息E-R圖</p><p> 圖2.6 工廠信息E-R圖</p><p> 圖2.7 工人信息E-R圖</p><p> 圖2.8 零件信息E-R圖&
29、lt;/p><p> 圖2.9 產(chǎn)品生產(chǎn)信息E-R圖</p><p> 圖2.10 零件生產(chǎn)信息E-R圖</p><p><b> (2)全局E-R圖</b></p><p> 圖2.11 全局E-R圖</p><p> 第三章 邏輯設(shè)計(jì)階段</p><p> 3.
30、1邏輯設(shè)計(jì)的任務(wù)和目標(biāo)</p><p> 以上的概念設(shè)計(jì)階段是獨(dú)立于任何一種數(shù)據(jù)模型的,但是邏輯設(shè)計(jì)階段就與選用的DBMS產(chǎn)品發(fā)生關(guān)系了,系統(tǒng)邏輯設(shè)計(jì)的任務(wù)就是將概念設(shè)計(jì)階段設(shè)計(jì)好的基本E-R圖轉(zhuǎn)換為選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)。具體內(nèi)容包括數(shù)據(jù)組織(將E-R圖轉(zhuǎn)換成關(guān)系模型、模型優(yōu)化、數(shù)據(jù)庫模式定義、用戶子模式設(shè)計(jì))、數(shù)據(jù)處理(畫出系統(tǒng)功能模塊圖)兩大任務(wù)。</p><
31、p><b> 3.2數(shù)據(jù)組織</b></p><p> 3.2.1將E-R圖轉(zhuǎn)換為關(guān)系模型</p><p> 實(shí)體型轉(zhuǎn)換為關(guān)系模式。實(shí)體的屬性就是關(guān)系的屬性,實(shí)體的碼就是關(guān)系的碼。對于實(shí)體間的聯(lián)系則有以下不同的情況:一個(gè)m:n聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式。與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為各實(shí)體碼的組合。</p&
32、gt;<p> 一個(gè)1:n聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與n端對應(yīng)的關(guān)系模式合并。如果轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,則與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為n端實(shí)體的碼。 一個(gè)1:1聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與任意一端對應(yīng)的關(guān)系模式合并。三個(gè)或三個(gè)以上實(shí)體間的一個(gè)多元聯(lián)系可以轉(zhuǎn)換為一個(gè)關(guān)系模式。與該多元聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性
33、,而關(guān)系的碼為各實(shí)體碼的組合 具有相同碼的關(guān)系模式可合并。</p><p> 由于車間和工人是1:n的關(guān)系,固可以將聯(lián)系跟實(shí)體工人的關(guān)系模式合并,由于產(chǎn)品和車間,零件和車間都是m:n的關(guān)系,所以可以建立一個(gè)獨(dú)立的關(guān)系模式,另外產(chǎn)品和倉庫的關(guān)系是1:n,零件和倉庫的關(guān)系是m:n,兩者也都可以建立一個(gè)獨(dú)立的關(guān)系模式。具體的基本E-R圖向關(guān)系模型的轉(zhuǎn)化如下:</p><p> 工廠:
34、Factory(Fyname,Fy_Dname)</p><p> 車間:Workshop(Wpno,Wp_Dname,Wp_Dphonenubmer,Wp_Daddress)</p><p> 工人:Worker(Wrno,Wrname,Wrsex,Wrage,Wrtypes,Wr_workshop)</p><p> 零件:Parts(Psno , Psw
35、eight,Psprice)</p><p> 產(chǎn)品:Product(Ptno,Ptname,Ptprice,Parts_no,Parts_number)</p><p> 倉庫:Warehous(Weno,We_phonenumber,We_Dname)</p><p> 產(chǎn)品儲(chǔ)存:Product_storage(Ptst_weno,Ptst_ptnumbe
36、r,Ptst_ptno)</p><p> 零件儲(chǔ)存:Parts_storage(Psst_weno,Psst_psnumber,Psst_psno)</p><p> 產(chǎn)品生產(chǎn):Product_producing(Pp_ptnumber , Pp_starttime ,Pp_endtime, Pp_ptno , Pp_wpno)</p><p> 零件生產(chǎn)
37、:Parts_producing(Ps_psnumber , Ps_starttime ,Ps_endtime, Ps_psno , Ps_wpno)</p><p> 3.2.2 模型分析</p><p> 關(guān)系模式Factory,Workshop,Worker,Parts,Product,Warehous,Product_storage Parts_storage,Product
38、_producing,Parts_producing不存在非主屬性對主屬性的部分函數(shù)依賴,也不存在傳遞函數(shù)依賴,已經(jīng)達(dá)到了3NF.</p><p> 3.2.3 用戶子模式定義</p><p> 表3.1 用戶子模式定義</p><p> 表3.2 產(chǎn)品信息視圖</p><p> 表3.2 零件信息視圖</p><
39、p> 第四章 物理設(shè)計(jì)階段</p><p> 4.1物理設(shè)計(jì)階段的目標(biāo)與任務(wù)</p><p> 數(shù)據(jù)庫的物理設(shè)計(jì)就是為邏輯數(shù)據(jù)模型選取一個(gè)最合適應(yīng)用要求的物理結(jié)構(gòu)的過程,在這個(gè)階段中要完成兩大任務(wù):</p><p> ?。?)確定數(shù)據(jù)庫的物理結(jié)構(gòu),在關(guān)系數(shù)據(jù)庫中主要是存取方法和存儲(chǔ)結(jié)構(gòu);</p><p> ?。?)對物理結(jié)構(gòu)進(jìn)行評
40、價(jià),評價(jià)的重點(diǎn)是時(shí)間和空間效率。</p><p><b> 4.2數(shù)據(jù)存儲(chǔ)方面</b></p><p> 為數(shù)據(jù)庫中各基本表建立的索引如下:</p><p> 由于基本表Product,Parts的主碼Ptno,Psno經(jīng)常在查詢條件和連接操作的連接條件,出現(xiàn),且它們的值唯一,在兩個(gè)屬性上建立唯一性索引;</p><p
41、> 第五章 數(shù)據(jù)庫實(shí)施階段</p><p> 5.1建立數(shù)據(jù)庫、數(shù)據(jù)表、視圖、索引</p><p> 5.1.1 建立數(shù)據(jù)庫</p><p> create database Factory</p><p> on primary</p><p><b> (</b></p
42、><p> name=factory_data,</p><p> filename='d:\xcm\Factory.mdf',</p><p> size=50MB,</p><p> maxsize=70MB,</p><p> filegrowth=1MB)</p><p
43、><b> log on(</b></p><p> name=factory_log,</p><p> filename='d:\xcm\Factory.ldf',</p><p> size=10MB,</p><p> maxsize=15MB,</p><p&
44、gt; filegrowth=1MB)</p><p> 5.1.2 建立數(shù)據(jù)表</p><p><b> ?。?)建立工廠表</b></p><p> create table Factory</p><p><b> (</b></p><p> Fyname
45、varchar(20) not null,</p><p> Fy_Dname varchar(20) not null,</p><p> primary key(Fyname,Fy_Dname),</p><p><b> );</b></p><p><b> (2)建立車間表</b>
46、</p><p> create table Workshop</p><p><b> (</b></p><p> Wpno varchar(20)primary key,</p><p> Wp_Dname varchar(20) not null,</p><p> Wp_Dph
47、onenubmer varchar(20) not null,</p><p> Wp_Daddress varchar(20) not null,</p><p><b> );</b></p><p><b> ?。?)建立工人表</b></p><p> create table Wor
48、ker</p><p><b> (</b></p><p> Wrno varchar(20) primary key,</p><p> Wrname varchar(20)not null,</p><p> Wrage int null,</p><p> Wrsex varch
49、ar(2) check(Wrsex in ('男','女')),</p><p> Wrtypes varchar(20),</p><p> Wr_workshop varchar(20)not null,</p><p> foreign key(Wr_workshop)references Workshop(Wpno)&l
50、t;/p><p> on delete cascade</p><p> on update cascade</p><p><b> );</b></p><p><b> (4)建立零件表</b></p><p> create table Parts</p&
51、gt;<p><b> (</b></p><p> Psno varchar(20)primary key,</p><p> Psprice numeric(10,1)default 0,</p><p> check(Psprice>=0),</p><p> Psweight num
52、eric(10,1)default 0,</p><p> check(Psweight>=0),</p><p><b> );</b></p><p><b> ?。?)建立產(chǎn)品表</b></p><p> create table Product</p><p&
53、gt;<b> (</b></p><p> Ptno varchar(20)primary key,</p><p> Ptname varchar(20)not null,</p><p> Ptprice numeric(10,1) default 0,</p><p> check(Ptprice>
54、;=0),</p><p> Parts_no varchar(20)not null,</p><p> Parts_number int default 0,</p><p> foreign key(Parts_no)references Parts(Psno)</p><p> on delete cascade</p&
55、gt;<p> on update cascade</p><p><b> ); </b></p><p><b> ?。?)建立倉庫表</b></p><p> create table Warehous</p><p><b> (</b></
56、p><p> Weno varchar(20) primary key,</p><p> We_Dname varchar(20),</p><p> We_phonenumber varchar(20)</p><p><b> );</b></p><p> ?。?)建立產(chǎn)品儲(chǔ)存表<
57、;/p><p> create table Product_storage</p><p><b> (</b></p><p> Ptst_weno varchar(20),</p><p> Ptst_ptnumber int,</p><p> Ptst_ptno varchar(20
58、),</p><p> primary key(ptst_weno,ptst_ptno),</p><p> foreign key(Ptst_weno)references Warehous(Weno)</p><p> on delete cascade</p><p> on update cascade,</p>
59、<p> foreign key(Ptst_ptno)references Product(Ptno)</p><p> on delete cascade</p><p> on update cascade</p><p><b> );</b></p><p> (8)建立零件儲(chǔ)存表</
60、p><p> create table Parts_storage</p><p><b> (</b></p><p> Psst_weno varchar(20),</p><p> Psst_psnumber int,</p><p> Psst_psno varchar(20),&l
61、t;/p><p> primary key(psst_weno,psst_psno),</p><p> foreign key(Psst_weno)references Warehous(Weno)</p><p> on delete cascade</p><p> on update cascade,</p><
62、;p> foreign key(Psst_psno)references Parts(Psno)</p><p> on delete cascade</p><p> on update cascade,</p><p><b> );</b></p><p> ?。?)建立產(chǎn)品生產(chǎn)表</p>
63、<p> create table Product_producing</p><p><b> (</b></p><p> Pp_ptnumber int, </p><p> Pp_starttime datetime,</p><p> Pp_endtime datetime, <
64、/p><p> Pp_ptno varchar(20)primary key, </p><p> Pp_wpno varchar(20),</p><p> foreign key(Pp_ptno)references Product(Ptno)</p><p> on delete cascade</p><p&g
65、t; on update cascade,</p><p> foreign key(Pp_wpno)references Workshop(Wpno)</p><p> on delete cascade</p><p> on update cascade</p><p><b> );</b></p
66、><p> ?。?0)建立零件生產(chǎn)表</p><p> create table Parts_producing</p><p><b> (</b></p><p> Ps_psnumber int, </p><p> Ps_starttime datetime,</p>
67、<p> Ps_endtime datetime, </p><p> Ps_psno varchar(20), </p><p> Ps_wpno varchar(20),</p><p> primary key(ps_wpno,ps_psno),</p><p> foreign key(Ps_psno)refere
68、nces Parts(Psno)</p><p> on delete cascade</p><p> on update cascade,</p><p> foreign key(Ps_wpno)references Workshop(Wpno)</p><p> on delete cascade</p><
69、;p> on update cascade</p><p><b> );</b></p><p> 5.1.3 建立視圖</p><p> ?。?)建立產(chǎn)品信息視圖</p><p> create view Product_information</p><p><b>
70、; as </b></p><p> select Ptno,Ptname,Ptprice,Parts_no,Parts_number,Ptst_weno,</p><p> Ptst_ptnumber,Pp_ptnumber, Pp_starttime ,Pp_endtime,Pp_wpno</p><p> from Product_sto
71、rage,Product,Product_producing</p><p> where Product.Ptno=Product_producing.Pp_ptno and Product.Ptno=Product_storage.Ptst_ptno</p><p> ?。?)建立零件信息視圖</p><p> create view Parts_infor
72、mation</p><p><b> as </b></p><p> select Psno Psweight,Psprice,Psst_weno,Psst_psnumber,Ps_psnumber,Ps_starttime ,</p><p> Ps_endtime,Ps_wpno</p><p> fro
73、m Parts_storage,Parts,Parts_producing</p><p> where Parts.Psno=Parts_producing.Ps_psno and Parts.Psno=Parts_storage.Psst_psno</p><p> 5.1.4 建立索引</p><p> create unique index Ptno
74、on Product(Ptno);</p><p> create unique index Psno on Parts(Psno);</p><p> 5.1.5 建立觸發(fā)器</p><p> ?。?)在Workshop上建立觸發(fā)器Workshop_delete,當(dāng)刪除表Workshop中的記錄時(shí),相應(yīng)的刪除在表Worker中的記錄</p>&l
75、t;p> create trigger Workshop_delete</p><p> on Workshop</p><p> for delete</p><p><b> as </b></p><p> delete Worker</p><p> from delet
76、ed</p><p> where Worker.Wr_workshop=deleted.Wpno;</p><p> ?。?)在Workshop上建立觸發(fā)器Workshop_delete1,當(dāng)刪除表Workshop中的記錄時(shí),相應(yīng)的刪除在表Product_producing中的記錄</p><p> create trigger Workshop_delete
77、1</p><p> on Workshop</p><p> for delete</p><p><b> as </b></p><p> delete Product_producing</p><p> from deleted1</p><p> w
78、here Product_producing.Pp_wpno=deleted1.Wpno;</p><p> (3)在Workshop上建立觸發(fā)器Workshop_delete2,當(dāng)刪除表Workshop中的記錄時(shí),相應(yīng)的刪除在表Parts_producing中的記錄</p><p> create trigger Workshop_delete2</p><p&g
79、t; on Workshop</p><p> for delete</p><p><b> as </b></p><p> delete Parts_producing</p><p> from deleted1</p><p> where Parts_producing.P
80、s_wpno=deleted1.Wpno;</p><p> (4) 在Warehous上建立觸發(fā)器Warehous _delete,當(dāng)刪除表Warehous中的記錄時(shí),相應(yīng)的刪除在表Product_storage中的記錄</p><p> create trigger Warehous_delete</p><p> on Warehous</p>
81、;<p> for delete</p><p><b> as </b></p><p> delete Product_storage</p><p> from deleted</p><p> where Product_storage.Ptst_weno=deleted.Weno;<
82、;/p><p> (5) 在Warehous上建立觸發(fā)器Warehous _delete1,當(dāng)刪除表Warehous中的記錄時(shí),相應(yīng)的刪除在表Parts_storage中的記錄</p><p> create trigger Warehous_delete1</p><p> on Warehous</p><p> for delete
83、</p><p><b> as </b></p><p> delete Parts_storage</p><p> from deleted</p><p> where Parts_storage.Psst_weno=deleted.Weno;</p><p> (6) 在Par
84、ts上建立觸發(fā)器Parts _delete,當(dāng)刪除表Parts中的記錄時(shí),相應(yīng)的刪除在表Product中的記錄</p><p> create trigger Parts_delete</p><p><b> on Parts</b></p><p> for delete</p><p><b>
85、as </b></p><p> delete Product</p><p> from deleted</p><p> where Product.Parts_no=deleted.Psno;</p><p> 5.1.6 數(shù)據(jù)庫備份與恢復(fù)</p><p><b> 備份</
86、b></p><p> backup database Factory</p><p> to disk='D:\xcm\Factory_full_2010519.bak'; </p><p><b> 恢復(fù):</b></p><p> restore filelistonly </p
87、><p> from disk = 'D:\xcm\Factory_full_2010519.bak'</p><p> restore database dy_Factory </p><p> from disk = 'D:\xcm\Factory_full_2010519.bak' </p><p>
88、 with move 'Factory' tO 'D:\xcm\dy_Factory.mdf', </p><p> move 'Factory_log' tO 'D:\xcm\dy_Factory.ldf'</p><p> 5.1.7 創(chuàng)建登錄名、用戶以及授予用戶權(quán)限</p><p> ex
89、ecute sp_addlogin 'dayao','123456' </p><p> use Factory</p><p><b> go</b></p><p> execute sp_grantdbaccess 'dayao','dy' </p>&l
90、t;p> grant select on Worker to dy</p><p><b> 5.2數(shù)據(jù)入庫</b></p><p> 通過插入語句把數(shù)據(jù)插入到相應(yīng)的表中。</p><p> 5.3創(chuàng)建各個(gè)功能的存儲(chǔ)過程</p><p> 系統(tǒng)共創(chuàng)建了10個(gè)存儲(chǔ)過程,具體列表如下:</p>
91、<p> 表5.1 創(chuàng)建的存儲(chǔ)過程列表:</p><p><b> 第六章 設(shè)計(jì)總結(jié)</b></p><p> 這次課程設(shè)計(jì)是我進(jìn)入大學(xué)以來的第四個(gè)課程設(shè)計(jì),也是第一個(gè)數(shù)據(jù)庫課程設(shè)計(jì),在老師剛給我們題目的時(shí)候,我有點(diǎn)點(diǎn)的茫然,不知道從何開始下手,甚至自己心里有點(diǎn)點(diǎn)的急躁。通過向老師請教,和向?qū)W長學(xué)習(xí),并在網(wǎng)上搜索一些相關(guān)的資料,逐漸地對數(shù)據(jù)庫的課程設(shè)
92、計(jì)有了相當(dāng)?shù)牧私?。老師一共給了4個(gè)題目,難度梯度依次降低。就我而言,可能通過這個(gè)學(xué)期的對數(shù)據(jù)庫的學(xué)習(xí),還沒有把數(shù)據(jù)庫的知識(shí)把握到位,所以選擇了第一個(gè)工廠管理系統(tǒng),難度相對其他較大一點(diǎn),我希望通過這次的課程設(shè)計(jì),能讓自己把這方面的知識(shí)把握的更加的到位。</p><p> 設(shè)計(jì)剛開始時(shí)候,我就忙于寫論文,而忽略了課程設(shè)計(jì)的核心,也就是設(shè)計(jì)一個(gè)工廠的管理系統(tǒng),從而自己思路全無,而又急功近利,導(dǎo)致自己變的異常的心不在焉
93、,看到同學(xué)們的管理系統(tǒng)的模型已經(jīng)頗有幾分成色了,而自己還是在起跑點(diǎn),現(xiàn)在回想起來,讓我感動(dòng)詫異的是,我非但沒有一絲絲的著急,反而有種莫名的自負(fù)感,覺得自己這個(gè)東西只要幾個(gè)小時(shí)就能完成似的,結(jié)果當(dāng)然是時(shí)間稍縱即逝,而自己的設(shè)計(jì)一拖再拖。還好,在關(guān)鍵的時(shí)候,自己還是能夠把握自己,能夠駕馭自己懶惰的心理,開始認(rèn)認(rèn)真真的做課程設(shè)計(jì),從需求分析,再到概念分析,一步一步來,每一個(gè)階段都用心去實(shí)現(xiàn)。當(dāng)然,其中也遇到過很多麻煩,但是通過詢問老師和同學(xué)討
94、論,還是順利的完成了既定的目標(biāo),而自己在這其中也受益良多。</p><p> 從這次課程設(shè)計(jì)當(dāng)中,看到了自己很多方面的不足,比如專業(yè)知識(shí)不到位,情緒波動(dòng)較大,有時(shí)候很難控制自己的情緒。所以以后應(yīng)當(dāng)在自制能力方面更好的鍛煉自己,同時(shí)應(yīng)當(dāng)鞏固專業(yè)知識(shí)。</p><p><b> 參考文獻(xiàn)</b></p><p> [1] 薩師煊 王珊,數(shù)據(jù)庫
95、系統(tǒng)概論(第三版),北京:高教出版社,2000</p><p> [2] Delpehi數(shù)據(jù)庫開發(fā)畢業(yè)設(shè)計(jì)指導(dǎo)及實(shí)例;機(jī)械工業(yè)出版社,2004</p><p> 附錄1 存儲(chǔ)過程定義</p><p> Warehous_Insert 的定義</p><p> CREATE PROCEDURE Warehous_Insert</p
96、><p> @Weno varchar(20) ,</p><p> @We_Dname varchar(20),</p><p> @We_phonenumber varchar(20),</p><p><b> as</b></p><p> insert i
97、nto Warehous</p><p> values(@Weno,@We_Dname,@We_phonenumber);</p><p> ?。?)Product_Insert的定義</p><p> CREATE PROCEDURE Product_Insert</p><p> @Ptno varchar(20),</p&
98、gt;<p> @Ptname varchar(20),</p><p> @Ptprice numeric(10,1),</p><p> @Parts_no varchar(20),</p><p> @Parts_number int</p><p><b> as</b></p&g
99、t;<p> insert into Product</p><p> values(@Ptno,@Ptname,@Ptprice,@Parts_no,@Parts_number);</p><p> (3)Workshop_Insert的定義</p><p> CREATE PROCEDURE Workshop_Insert</p>
100、;<p> @Wpno varchar(20),</p><p> @Wp_Daddress varchar(20),</p><p> @Wp_Dphonenubmer varchar(20),</p><p> @Wp_Dname varchar(20)</p><p><b> as</b>
101、;</p><p> insert into Workshop</p><p> values(@Wpno,@Wp_Daddress,@Wp_Dphonenubmer,@Wp_Dname);</p><p> ?。?)Worker_Insert 的定義</p><p> CREATE PROCEDURE Worker_Insert<
102、;/p><p> @Wrno varchar(20),</p><p> @Wrrypes varchar(20),</p><p> @Wr_workshop varchar(20),</p><p> @Wrname varchar(20),</p><p> @Wrsex varchar(2),</p
103、><p> @Wrage int</p><p><b> as</b></p><p> insert into Worker</p><p> values(@Wrno,@Wrrypes,@Wr_workshop,@Wrname,@Wrsex,@Wrage);</p><p> ?。?)
104、Parts_Insert的定義</p><p> CREATE PROCEDURE Parts_Insert</p><p> @Psno varchar(20),</p><p> @Psweight numeric(10,1),</p><p> @Psprice numeric(10,1)</p><p>
105、;<b> as</b></p><p> insert into Parts</p><p> values(@Psno,@Psweight,@Psprice);</p><p> ?。?)Product_storage_Insert的定義</p><p> CREATE PROCEDURE Product_
106、storage_Insert</p><p> @Ptst_weno varchar(20),</p><p> @Ptst_ptnumber int, </p><p> @Ptst_ptno varchar(20)</p><p><b> as</b></p><p> inse
107、rt into Product_storage</p><p> values(@Ptst_weno,@Ptst_ptnumber,@Ptst_ptno);</p><p> (7)Parts_storage_Insert的定義</p><p> CREATE PROCEDURE Parts_storage_Insert</p><p>
108、; @Psst_weno varchar(20),</p><p> @Psst_psnumber int, </p><p> @Psst_psno varchar(20)</p><p><b> as</b></p><p> insert into Parts_storage</p>&
109、lt;p> values(@Psst_weno,@Psst_psnumber,@Psst_psno);</p><p> ?。?)Product_producing_Insert的定義</p><p> CREATE PROCEDURE Product_producing_Insert</p><p> @Pp_ptnumber int,</p&g
110、t;<p> @Pp_starttime datetime, </p><p> @Pp_endtime datetime,</p><p> @Pp_ptno varchar(20),</p><p> @Pp_wpno varchar(20)</p><p><b> as</b><
111、/p><p> insert into Product_producing</p><p> values(@Pp_ptnumber,@Pp_starttime,@Pp_endtime,@Pp_ptno,@Pp_wpno);</p><p> (9)Parts_producing_Insert的定義</p><p> CREATE PRO
112、CEDURE Parts_producing_Insert</p><p> @Ps_psnumber int,</p><p> @Ps_starttime datetime, </p><p> @Ps_endtime datetime,</p><p> @Ps_psno varchar(20),</p><
113、;p> @Ps_wpno varchar(20)</p><p><b> as</b></p><p> insert into Parts_producing</p><p> values(@Ps_psnumber,@Ps_starttime,@Ps_endtime,@Ps_psno,@Ps_wpno);</p>
114、;<p> 附錄2 數(shù)據(jù)查看和存儲(chǔ)過程功能的驗(yàn)證</p><p> 1.基本表的數(shù)據(jù)查看:</p><p> 在這里只列出兩個(gè)基本表的查看:</p><p> 圖1-1 Product表查詢結(jié)果</p><p> 圖1-2 Worker表查詢結(jié)果</p><p> 2.存儲(chǔ)過程功能的驗(yàn)證:&l
115、t;/p><p> 在這里只列出一個(gè)存儲(chǔ)過程:</p><p> 圖1-3 Warehous開始的信息</p><p> 圖1-4 通過存儲(chǔ)過程插入信息后的信息列表</p><p> 3.觸發(fā)器功能的驗(yàn)證:</p><p> 圖1-5 表workshop、Product_producing、Parts_produ
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫課程設(shè)計(jì)---中小型超市銷售管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 中小型超市銷售管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)--小型超市管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)---小型超市管理系統(tǒng)
- 小型超市管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計(jì)
- 小型超市管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計(jì)
- 小型超市管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)-中小型企業(yè)工資管理的設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫課程設(shè)計(jì)---小型記賬系統(tǒng)
- 《數(shù)據(jù)庫原理與設(shè)計(jì)》課程設(shè)計(jì)---工廠管理系統(tǒng)
- sql數(shù)據(jù)庫課程設(shè)計(jì)-- 小型超市管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)--數(shù)據(jù)庫設(shè)計(jì)—公司管理系統(tǒng)
- 工廠數(shù)據(jù)庫管理系統(tǒng)課程設(shè)計(jì)說明書
- 數(shù)據(jù)庫課程設(shè)計(jì)---機(jī)房管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)---圖書管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)--工資管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)-酒店管理系統(tǒng)課程設(shè)計(jì)
- 數(shù)據(jù)庫原理課程設(shè)計(jì)---教室管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
- 數(shù)據(jù)庫課程設(shè)計(jì)大報(bào)告--小型圖書管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計(jì)--bbs系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
評論
0/150
提交評論