數(shù)據(jù)庫課程設計--中小型工廠管理系統(tǒng)_第1頁
已閱讀1頁,還剩33頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  摘 要</b></p><p>  數(shù)據(jù)庫是數(shù)據(jù)管理的最新技術,是計算機科學的重要分支。今天,信息資源已成為各個部門的重要財富和資源。建立一個滿足各級部門信息處理要求的行之有效的信息系統(tǒng)也成為一個企業(yè)或組織生存和發(fā)展的重要條件。對工廠管理部門而言,以前單一的手工檢索已不能滿足人們的要求,往往是投入了大量的人力和財力卻得不到高效的管理效率。為了便于工廠信息資料的

2、管理需要有效的工廠管理軟件,減輕工作人員的工作量,方便工作人員對它的操作,提高管理的質量和水平,做到高效、智能化管理,達到提高工廠信息檢索效率的目的。采用數(shù)據(jù)庫技術生成的工廠管理系統(tǒng)將會極大地方便并簡化圖管理人員和工作人員的勞動,使工作人員從繁忙、復雜的工作進入到一個簡單、高效的工作中?;谶@個問題,開發(fā)了工廠管理系統(tǒng)。系統(tǒng)采用C/S模式,實現(xiàn)了工廠信息更新與查詢的方便、高效性、有效性和及時性。本文通過作者設計和開發(fā)一個中小型工廠管理系

3、統(tǒng)的實踐,闡述了工廠管理軟件中所應具有的基本功能、設計、實現(xiàn)。</p><p>  關鍵字:工廠管理,數(shù)據(jù)庫技術,功能</p><p><b>  目 錄</b></p><p><b>  引 言1</b></p><p>  第一章 需求分析階段2</p><p>

4、;<b>  1.1 引言2</b></p><p>  1.2 需求分析階段的目標與任務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 體會和心得3</p><p>  1.3.2 工廠管理系統(tǒng)業(yè)務流程圖4</p><p>  1.3.3 工廠管理系統(tǒng)數(shù)字字典4</p><p>  第二章 概念設計階段7</p><p><b>  2.1 引言7</b></p><

6、;p>  2.2 任務與目標7</p><p>  2.3 階段結果7</p><p>  第三章 邏輯設計階段12</p><p>  3.1邏輯設計的任務和目標12</p><p>  3.2數(shù)據(jù)組織12</p><p>  3.2.1將E-R圖轉換為關系模型12</p><p

7、>  3.2.2 模型分析13</p><p>  3.2.3 用戶子模式定義13</p><p>  第四章 物理設計階段15</p><p>  4.1物理設計階段的目標與任務15</p><p>  4.2數(shù)據(jù)存儲方面15</p><p>  第五章 數(shù)據(jù)庫實施階段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ù)庫備份與恢復21</p><p>  5.1.7 創(chuàng)建登錄名、用戶以及授予用戶權限22</p><p>  5.2數(shù)據(jù)入庫22</p><p>  5.3創(chuàng)建各個功能的存儲過程22</p><p>  第六章 設計總結23</p><p><b> 

10、 參考文獻24</b></p><p>  附錄1 存儲過程定義25</p><p>  附錄2 數(shù)據(jù)查看和存儲過程功能的驗證28</p><p><b>  引 言</b></p><p>  在社會進入信息化時代以來,信息產業(yè)所創(chuàng)造的社會價值漸漸地開始占據(jù)社會體系中不可替代的位置。人們也漸漸明白了信

11、息和知識更新的重要性,在這個信息更新快速的社會,信息代表著價值,管理好信息也就意味著非常重要,好的管理機制帶來效率,效率象征著競爭力,象征著效益,一個好的管理系統(tǒng)對于一個工廠來說是至關重要的,它是一個工廠的生命線。</p><p>  在計算機日益普及的今天,建立一個滿足各級部門信息處理要求的行之有效的信息系統(tǒng)也成為一個企業(yè)或組織生存和發(fā)展的重要條件。對工廠管理部門而言,以前單一的手工檢索已不能滿足人們的要求,往

12、往是投入了大量的人力和財力卻得不到高效的管理效率。為了便于工廠信息資料的管理需要有效的工廠管理軟件,減輕工作人員的工作量,方便工作人員對它的操作,提高管理的質量和水平,做到高效、智能化管理,達到提高工廠信息檢索效率的目的。采用數(shù)據(jù)庫技術生成的工廠管理系統(tǒng)將會極大地方便并簡化圖管理人員和工作人員的勞動,使工作人員從繁忙、復雜的工作進入到一個簡單、高效的工作中。</p><p>  本文以工廠管理系統(tǒng)開發(fā)過程為背景,

13、全文分為目錄、需求分析、概要設計、邏輯設計、物理設計,以及系統(tǒng)的實現(xiàn)等全過程。在程序設計與調試上采用了自上而下,逐步細化,逐步完善的原則。采用結構化的功能模塊設計系統(tǒng)功能,可讀性好,易于擴充?;竟δ苋?,系統(tǒng)可讀性好,易于維護、更新,安全性好。</p><p>  第一章 需求分析階段</p><p><b>  1.1 引言</b></p><

14、p>  在進行系統(tǒng)設計之前,首先要對系統(tǒng)的現(xiàn)狀進行分析。根據(jù)系統(tǒng)的目標、需求和功能,制定和選擇一個較好的系統(tǒng)方案,從而達到一個合理的優(yōu)化系統(tǒng)。</p><p>  需求分析是在于要弄清用戶對開發(fā)的數(shù)據(jù)庫應用系統(tǒng)的確切要求。數(shù)據(jù)庫設計的第一步是明確數(shù)據(jù)庫的目的和如何使用,也就是說需要從數(shù)據(jù)庫中得到哪些信息。明確目的之后,就可以確定您需要保存哪些主題的信息(表),以及每個主題需要保存哪些信息(表中字段)。<

15、;/p><p>  在構造系統(tǒng)時,首先從需求出發(fā)構造數(shù)據(jù)庫表,然后再由數(shù)據(jù)庫表結合需求劃分系統(tǒng)功能模塊。這樣,就把一個大的系統(tǒng)分解成了幾個小系統(tǒng)。這里把系統(tǒng)的層次劃分為了五個部分:倉庫管理、車間管理、工人管理、產品管理、零件管理。能夠實現(xiàn)以下功能:</p><p>  1.更新和查詢倉庫信息</p><p>  2.更新和查詢車間信息</p><p&

16、gt;  3.更新和查詢工人信息</p><p>  4.更新和查詢產品信息</p><p>  5.更新和查詢零件信息</p><p>  1.2 需求分析階段的目標與任務</p><p>  1.2.1 處理對象</p><p><b>  工廠:廠名、廠長名</b></p>&

17、lt;p>  車間:車間號、車間主任姓名、車間主任地址、車間主任電話</p><p>  生產產品:車間號、產品號、產品數(shù)量、開始生產時間、生產截止時間</p><p>  生產零件:車間號、零件號、零件數(shù)量、開始生產時間、生產截止時間</p><p>  工人:職工號、職工姓名、職工年齡、職工性別、工種、工作車間號</p><p> 

18、 產品:產品號、產品名稱、產品價格、零件號、零件數(shù)量</p><p>  零件:零件號、價格重量、價格價格</p><p>  倉庫:倉庫號、倉庫主任姓名、倉庫主任電話</p><p>  儲存產品:倉庫號、產品號、產品數(shù)量</p><p>  儲存零件:倉庫號、零件號、零件數(shù)量</p><p>  1.2.2 處理功

19、能及要求</p><p>  1.能夠存儲一定數(shù)量的工廠信息,并方便有效的進行相應的數(shù)據(jù)操作和管理,這主要包括:</p><p>  1) 工廠信息的錄入、刪除及修改。</p><p>  2) 工廠信息的多關鍵字檢索查詢。</p><p>  2.能夠提供一定的安全機制,提供數(shù)據(jù)信息授權訪問,防止隨意刪改、查詢。</p>

20、<p>  3.對查詢、統(tǒng)計的結果能夠列表顯示。</p><p>  1.2.3 安全性及完整性要求</p><p><b>  1) 安全性要求 </b></p><p>  系統(tǒng)安全性要求體現(xiàn)在數(shù)據(jù)庫安全性、信息安全性和系統(tǒng)平臺的安全性等方面。安全性先通過視圖機制,不同的用戶只能訪問系統(tǒng)授權的視圖,這樣可提供系統(tǒng)數(shù)據(jù)一定程度上的安

21、全性,再通過分配權限、設置權限級別來區(qū)別對待不同操作者對數(shù)據(jù)庫的操作來提高數(shù)據(jù)庫的安全性;系統(tǒng)平臺的安全性體現(xiàn)在操作系統(tǒng)的安全性、計算機系統(tǒng)的安全性和網(wǎng)絡體系的安全性等方面。</p><p><b>  2) 完整性要求</b></p><p>  系統(tǒng)完整性要求系統(tǒng)中數(shù)據(jù)的正確性以及相容性。可通過建立主、外鍵,使用check約束,或者通過使用觸發(fā)器和級聯(lián)更新。<

22、;/p><p>  1.3 需求分析階段成果</p><p>  1.3.1 體會和心得</p><p>  在需求分析這個階段,由于環(huán)境的限制,我主要途徑是通過上網(wǎng)查詢工廠相關信息和自己生活中的一些積累,由于這是第一次做這樣的一個需求分析,剛開始的時候,不知道從何下手,通過向老師、學長、同學的學習和討論,慢慢地開始理清了思路,然后集中精力在網(wǎng)上了解工廠管理方面的問題和

23、相關的一些操作,在設計E—R圖的時候遇到過一些麻煩,通過老師對我的知道,終于還是順利的完成了這個階段的任務。</p><p>  1.3.2 工廠管理系統(tǒng)業(yè)務流程圖</p><p>  表1.1 業(yè)務流程圖</p><p>  1.3.3 工廠管理系統(tǒng)數(shù)字字典</p><p>  1.數(shù)據(jù):系統(tǒng)涉及的數(shù)據(jù)項一共39項</p>&

24、lt;p>  表1.2 數(shù)據(jù)項列表</p><p><b>  2.數(shù)據(jù)結構:</b></p><p>  表1.3 數(shù)據(jù)結構列表</p><p><b>  3.處理邏輯描述</b></p><p><b>  1.4處理邏輯列表</b></p><

25、p>  第二章 概念設計階段</p><p><b>  2.1 引言</b></p><p>  工廠管理系統(tǒng)的主要目標是方便對工廠信息的管理和更新,實現(xiàn)工廠信息管理的系統(tǒng)化和自動化,使得工廠管理高度一體化,從而提高工廠生產效益。</p><p>  主要任務是對倉庫信息、車間信息、工人信息、產品和產品生產信息、零件和零件生產信息的操作

26、及處理。</p><p>  概念設計階段主要是將需求分析階段得到的用戶需求抽象為信息結構(概念模型)的過程,它是整個數(shù)據(jù)庫設計的關鍵。</p><p><b>  2.2 任務與目標</b></p><p> ?。?)設計分E-R圖,即各子模塊的E-R圖;</p><p> ?。?)生成初步E-R圖,通過合并方法,做到

27、各子系統(tǒng)實體、屬性、聯(lián)系統(tǒng)一;</p><p> ?。?)生成全局E-R圖,通過消除沖突等方法。</p><p><b>  2.3 階段結果</b></p><p>  (1)各個子模塊的E-R圖:</p><p>  圖2.1 倉庫信息E-R圖</p><p>  圖2.2 產品信息E-R圖&

28、lt;/p><p>  圖2.3 車間信息E-R圖</p><p>  圖2.4 產品儲存信息E-R圖</p><p>  圖2.5 零件儲存信息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 產品生產信息E-R圖</p><p>  圖2.10 零件生產信息E-R圖</p><p><b>  (2)全局E-R圖</b></p><p>  圖2.11 全局E-R圖</p><p>  第三章 邏輯設計階段</p><p>  3.

30、1邏輯設計的任務和目標</p><p>  以上的概念設計階段是獨立于任何一種數(shù)據(jù)模型的,但是邏輯設計階段就與選用的DBMS產品發(fā)生關系了,系統(tǒng)邏輯設計的任務就是將概念設計階段設計好的基本E-R圖轉換為選用DBMS產品所支持的數(shù)據(jù)模型相符合的邏輯結構。具體內容包括數(shù)據(jù)組織(將E-R圖轉換成關系模型、模型優(yōu)化、數(shù)據(jù)庫模式定義、用戶子模式設計)、數(shù)據(jù)處理(畫出系統(tǒng)功能模塊圖)兩大任務。</p><

31、p><b>  3.2數(shù)據(jù)組織</b></p><p>  3.2.1將E-R圖轉換為關系模型</p><p>  實體型轉換為關系模式。實體的屬性就是關系的屬性,實體的碼就是關系的碼。對于實體間的聯(lián)系則有以下不同的情況:一個m:n聯(lián)系轉換為一個關系模式。與該聯(lián)系相連的各實體的碼以及聯(lián)系本身的屬性均轉換為關系的屬性,而關系的碼為各實體碼的組合。</p&

32、gt;<p>  一個1:n聯(lián)系可以轉換為一個獨立的關系模式,也可以與n端對應的關系模式合并。如果轉換為一個獨立的關系模式,則與該聯(lián)系相連的各實體的碼以及聯(lián)系本身的屬性均轉換為關系的屬性,而關系的碼為n端實體的碼。 一個1:1聯(lián)系可以轉換為一個獨立的關系模式,也可以與任意一端對應的關系模式合并。三個或三個以上實體間的一個多元聯(lián)系可以轉換為一個關系模式。與該多元聯(lián)系相連的各實體的碼以及聯(lián)系本身的屬性均轉換為關系的屬性

33、,而關系的碼為各實體碼的組合 具有相同碼的關系模式可合并。</p><p>  由于車間和工人是1:n的關系,固可以將聯(lián)系跟實體工人的關系模式合并,由于產品和車間,零件和車間都是m:n的關系,所以可以建立一個獨立的關系模式,另外產品和倉庫的關系是1:n,零件和倉庫的關系是m:n,兩者也都可以建立一個獨立的關系模式。具體的基本E-R圖向關系模型的轉化如下:</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>  產品:Product(Ptno,Ptname,Ptprice,Parts_no,Parts_number)</p><p>  倉庫:Warehous(Weno,We_phonenumber,We_Dname)</p><p>  產品儲存:Product_storage(Ptst_weno,Ptst_ptnumbe

36、r,Ptst_ptno)</p><p>  零件儲存:Parts_storage(Psst_weno,Psst_psnumber,Psst_psno)</p><p>  產品生產:Product_producing(Pp_ptnumber , Pp_starttime ,Pp_endtime, Pp_ptno , Pp_wpno)</p><p>  零件生產

37、:Parts_producing(Ps_psnumber , Ps_starttime ,Ps_endtime, Ps_psno , Ps_wpno)</p><p>  3.2.2 模型分析</p><p>  關系模式Factory,Workshop,Worker,Parts,Product,Warehous,Product_storage Parts_storage,Product

38、_producing,Parts_producing不存在非主屬性對主屬性的部分函數(shù)依賴,也不存在傳遞函數(shù)依賴,已經(jīng)達到了3NF.</p><p>  3.2.3 用戶子模式定義</p><p>  表3.1 用戶子模式定義</p><p>  表3.2 產品信息視圖</p><p>  表3.2 零件信息視圖</p><

39、p>  第四章 物理設計階段</p><p>  4.1物理設計階段的目標與任務</p><p>  數(shù)據(jù)庫的物理設計就是為邏輯數(shù)據(jù)模型選取一個最合適應用要求的物理結構的過程,在這個階段中要完成兩大任務:</p><p> ?。?)確定數(shù)據(jù)庫的物理結構,在關系數(shù)據(jù)庫中主要是存取方法和存儲結構;</p><p>  (2)對物理結構進行評

40、價,評價的重點是時間和空間效率。</p><p><b>  4.2數(shù)據(jù)存儲方面</b></p><p>  為數(shù)據(jù)庫中各基本表建立的索引如下:</p><p>  由于基本表Product,Parts的主碼Ptno,Psno經(jīng)常在查詢條件和連接操作的連接條件,出現(xiàn),且它們的值唯一,在兩個屬性上建立唯一性索引;</p><p

41、>  第五章 數(shù)據(jù)庫實施階段</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> ?。?)建立車間表</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> ?。?)建立產品表</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> ?。?)建立產品儲存表<

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> ?。?)建立零件儲存表</

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> ?。?)建立產品生產表</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)建立零件生產表</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> ?。?)建立產品信息視圖</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,當刪除表Workshop中的記錄時,相應的刪除在表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,當刪除表Workshop中的記錄時,相應的刪除在表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> ?。?)在Workshop上建立觸發(fā)器Workshop_delete2,當刪除表Workshop中的記錄時,相應的刪除在表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,當刪除表Warehous中的記錄時,相應的刪除在表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,當刪除表Warehous中的記錄時,相應的刪除在表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,當刪除表Parts中的記錄時,相應的刪除在表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ù)庫備份與恢復</p><p><b>  備份</

86、b></p><p>  backup database Factory</p><p>  to disk='D:\xcm\Factory_full_2010519.bak'; </p><p><b>  恢復:</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)建登錄名、用戶以及授予用戶權限</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ù)插入到相應的表中。</p><p>  5.3創(chuàng)建各個功能的存儲過程</p><p>  系統(tǒng)共創(chuàng)建了10個存儲過程,具體列表如下:</p>

91、<p>  表5.1 創(chuàng)建的存儲過程列表:</p><p><b>  第六章 設計總結</b></p><p>  這次課程設計是我進入大學以來的第四個課程設計,也是第一個數(shù)據(jù)庫課程設計,在老師剛給我們題目的時候,我有點點的茫然,不知道從何開始下手,甚至自己心里有點點的急躁。通過向老師請教,和向學長學習,并在網(wǎng)上搜索一些相關的資料,逐漸地對數(shù)據(jù)庫的課程設

92、計有了相當?shù)牧私?。老師一共給了4個題目,難度梯度依次降低。就我而言,可能通過這個學期的對數(shù)據(jù)庫的學習,還沒有把數(shù)據(jù)庫的知識把握到位,所以選擇了第一個工廠管理系統(tǒng),難度相對其他較大一點,我希望通過這次的課程設計,能讓自己把這方面的知識把握的更加的到位。</p><p>  設計剛開始時候,我就忙于寫論文,而忽略了課程設計的核心,也就是設計一個工廠的管理系統(tǒng),從而自己思路全無,而又急功近利,導致自己變的異常的心不在焉

93、,看到同學們的管理系統(tǒng)的模型已經(jīng)頗有幾分成色了,而自己還是在起跑點,現(xiàn)在回想起來,讓我感動詫異的是,我非但沒有一絲絲的著急,反而有種莫名的自負感,覺得自己這個東西只要幾個小時就能完成似的,結果當然是時間稍縱即逝,而自己的設計一拖再拖。還好,在關鍵的時候,自己還是能夠把握自己,能夠駕馭自己懶惰的心理,開始認認真真的做課程設計,從需求分析,再到概念分析,一步一步來,每一個階段都用心去實現(xiàn)。當然,其中也遇到過很多麻煩,但是通過詢問老師和同學討

94、論,還是順利的完成了既定的目標,而自己在這其中也受益良多。</p><p>  從這次課程設計當中,看到了自己很多方面的不足,比如專業(yè)知識不到位,情緒波動較大,有時候很難控制自己的情緒。所以以后應當在自制能力方面更好的鍛煉自己,同時應當鞏固專業(yè)知識。</p><p><b>  參考文獻</b></p><p>  [1] 薩師煊 王珊,數(shù)據(jù)庫

95、系統(tǒng)概論(第三版),北京:高教出版社,2000</p><p>  [2] Delpehi數(shù)據(jù)庫開發(fā)畢業(yè)設計指導及實例;機械工業(yè)出版社,2004</p><p>  附錄1 存儲過程定義</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> ?。?)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> ?。?)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ù)查看和存儲過程功能的驗證</p><p>  1.基本表的數(shù)據(jù)查看:</p><p>  在這里只列出兩個基本表的查看:</p><p>  圖1-1 Product表查詢結果</p><p>  圖1-2 Worker表查詢結果</p><p>  2.存儲過程功能的驗證:&l

115、t;/p><p>  在這里只列出一個存儲過程:</p><p>  圖1-3 Warehous開始的信息</p><p>  圖1-4 通過存儲過程插入信息后的信息列表</p><p>  3.觸發(fā)器功能的驗證:</p><p>  圖1-5 表workshop、Product_producing、Parts_produ

溫馨提示

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

最新文檔

評論

0/150

提交評論