2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  《數(shù)據(jù)庫(kù)原理》課程設(shè)計(jì)報(bào)告</p><p>  設(shè)計(jì)題目: 網(wǎng)上訂購(gòu)系統(tǒng) </p><p>  所在系別: 班級(jí): </p><p>  姓名: <

2、;/p><p>  學(xué)號(hào): </p><p>  組號(hào): 指導(dǎo)教師: </p><p>  年 月 日</p><p><b>  目錄</b></p&g

3、t;<p><b>  一、需求分析2</b></p><p>  1.1開(kāi)發(fā)背景和意義2</p><p>  1.2系統(tǒng)需求概況2</p><p>  二、概念結(jié)構(gòu)設(shè)計(jì)4</p><p>  2.1、 各個(gè)表信息的實(shí)體圖設(shè)計(jì)4</p><p>  2.2、 E-R圖設(shè)計(jì)

4、5</p><p>  三、邏輯結(jié)構(gòu)設(shè)計(jì)6</p><p>  3.1、規(guī)范化的數(shù)據(jù)關(guān)系模式7</p><p>  3.2.數(shù)據(jù)庫(kù)及表結(jié)構(gòu)的創(chuàng)建7</p><p>  四、物理結(jié)構(gòu)設(shè)計(jì)與實(shí)現(xiàn)9</p><p>  五、數(shù)據(jù)實(shí)施和維護(hù)9</p><p>  5.1、數(shù)據(jù)庫(kù)完整性9<

5、;/p><p>  5.2、安全性設(shè)計(jì)10</p><p><b>  六、總結(jié)11</b></p><p><b>  七、附錄12</b></p><p><b>  1、需求分析</b></p><p>  1.1開(kāi)發(fā)背景和意義</p>

6、;<p>  1.1.1系統(tǒng)開(kāi)發(fā)背景</p><p>  商業(yè)企業(yè)中,貨物銷(xiāo)售時(shí),訂購(gòu)是關(guān)鍵的環(huán)節(jié)。它直接關(guān)系到企業(yè)的銷(xiāo)售業(yè)績(jī),而在一個(gè)企業(yè)中,銷(xiāo)售是關(guān)系到企業(yè)生存的關(guān)鍵。隨著時(shí)代的發(fā)展,貨物訂購(gòu)僅靠人力手工完成已經(jīng)無(wú)法滿(mǎn)足企業(yè)發(fā)展的需要。而對(duì)商業(yè)企業(yè)來(lái)說(shuō),只有訂貨量越多的時(shí)候,才可能產(chǎn)生更多的利潤(rùn)。使用訂貨管理系統(tǒng)來(lái)協(xié)助銷(xiāo)售部門(mén)管理訂單成為提高部門(mén)效率成為必須。</p><p&

7、gt;  1.1.2系統(tǒng)開(kāi)發(fā)意義</p><p>  網(wǎng)上訂貨管理作為計(jì)算機(jī)應(yīng)用的一個(gè)分支,有著手工管理無(wú)法比擬的優(yōu)點(diǎn)。該系統(tǒng)的三大益處有:</p><p>  (1)大大提高訂貨的運(yùn)作效率;</p><p>  (2)通過(guò)全面的信息采集和處理,輔助提高訂貨的決策水平;</p><p> ?。?)使用本系統(tǒng),可以迅速提升訂貨的管理水平,為降

8、低經(jīng)營(yíng)成本, 提高效益,增強(qiáng)網(wǎng)上訂貨擴(kuò)張力, 提供有效的技術(shù)保障。</p><p>  因此,開(kāi)發(fā)一套能夠?yàn)橄M(fèi)者及工作人員提提供方便的訂貨管理系統(tǒng),將是非常必要的,也是十分及時(shí)的。</p><p><b>  1.2系統(tǒng)需求概況</b></p><p>  1.2.1 功能需求</p><p>  用戶(hù)登陸企業(yè)產(chǎn)品網(wǎng)站

9、后,可以在線(xiàn)選購(gòu)貨物,在選完貨物后,系統(tǒng)提供一張訂貨單,訂貨單已經(jīng)包括用戶(hù)選過(guò)的貨物,送貨金額和訂單號(hào),還有一些待用戶(hù)填寫(xiě)的內(nèi)容:訂貨數(shù)量,訂貨時(shí)間和交貨時(shí)間。用戶(hù)填好電子訂貨單后提交。系統(tǒng)將其填進(jìn)系統(tǒng)數(shù)據(jù)庫(kù),系統(tǒng)通知管理員可以發(fā)貨,。</p><p>  (1) 用戶(hù)登錄時(shí),若用戶(hù)輸入的用戶(hù)名不存在時(shí),則無(wú)法登錄,然后再重新登錄;用戶(hù)能夠根據(jù)不同權(quán)限添加、修改和刪除系統(tǒng)不同級(jí)別的數(shù)據(jù)。</p>&

10、lt;p>  (2) 管理員登錄,可以從事以下操作:</p><p>  管理商品信息,可以對(duì)信息進(jìn)行查詢(xún)、添加、修改。查看供貨商數(shù)據(jù),并可以對(duì)數(shù)據(jù)進(jìn)行管理。</p><p>  添加新商品功能,可增加刪改商品信息。添加新商品,選擇商品類(lèi)別,輸入商品名稱(chēng),進(jìn)行商品說(shuō)明。類(lèi)別管理,可以更改類(lèi)別名稱(chēng),可以添加和刪除類(lèi)別。</p><p>  管理銷(xiāo)售單,可以銷(xiāo)售單

11、進(jìn)行條件查詢(xún),并進(jìn)行管理。</p><p>  查看庫(kù)存數(shù)據(jù),并可以對(duì)數(shù)據(jù)進(jìn)行管理。</p><p><b>  (3) 用戶(hù)界面</b></p><p>  本系統(tǒng)采用Microsoft Visual Studio 2008設(shè)計(jì),用戶(hù)交互界面采用的是基于Windows的窗口界面,并結(jié)合Telerik RadControls for WinF

12、orms設(shè)計(jì)美觀易懂的用戶(hù)界面,數(shù)據(jù)庫(kù)采用Microsoft SQL Server 2005設(shè)計(jì)。</p><p>  1.2.2 數(shù)據(jù)需求分析</p><p><b> ?。?)數(shù)據(jù)流程圖</b></p><p><b> ?。?) 數(shù)據(jù)字典</b></p><p><b>  數(shù)據(jù)元素

13、條目</b></p><p><b>  2、概念結(jié)構(gòu)設(shè)計(jì)</b></p><p>  2.1、 各個(gè)表信息的實(shí)體圖設(shè)計(jì)</p><p>  在已經(jīng)存在的需求分析的基礎(chǔ)上,經(jīng)過(guò)分析抽象,畫(huà)出反應(yīng)訂購(gòu)管理系統(tǒng)的E-R圖:</p><p>  1) 訂購(gòu)信息實(shí)體圖設(shè)計(jì)</p><p>  

14、訂購(gòu)表:此表記錄顧客訂購(gòu)商品的所有信息,管理員通過(guò)此表進(jìn)行信息查詢(xún),添加,刪除,修改等操作。訂購(gòu)實(shí)體圖如圖3-1所示。</p><p>  2) 商品信息實(shí)體圖設(shè)計(jì)</p><p>  商品信息表:此表記錄超市所有商品信息,管理員通過(guò)此表進(jìn)行商品查詢(xún),添加,刪除,修改等操作。商品信息實(shí)體圖如圖3-2所示。</p><p>  3) 顧客信息實(shí)體圖設(shè)計(jì)</p&g

15、t;<p>  顧客表:此表記錄所有顧客基本信息,管理員通過(guò)此表進(jìn)行顧客查詢(xún),添加,刪除,修改等操作。供應(yīng)商信息實(shí)體圖如圖3-3所示。</p><p>  2.2、 E-R圖設(shè)計(jì)</p><p>  網(wǎng)上訂貨管理系統(tǒng)數(shù)據(jù)庫(kù)E-R模型,如圖3-9所示:</p><p><b>  n</b></p><p>

16、<b>  m</b></p><p><b>  3、邏輯結(jié)構(gòu)設(shè)計(jì)</b></p><p>  實(shí)體的屬性就是關(guān)系的屬性,實(shí)體的碼就是關(guān)系的碼。對(duì)于實(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><p&g

17、t;  一個(gè)1:n聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與n端對(duì)應(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)系模式,也可以與任意一端對(duì)應(yīng)的關(guān)系模式合并。三個(gè)或三個(gè)以上實(shí)體間的一個(gè)多元聯(lián)系可以轉(zhuǎn)換為一個(gè)關(guān)系模式。與該多元聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為各實(shí)體碼的

18、組合實(shí)體型轉(zhuǎn)換為關(guān)系模式如下:</p><p>  1) 商品信息表(商品ID,商品名稱(chēng),保質(zhì)期,生產(chǎn)日期,庫(kù)存量,廠(chǎng)家,進(jìn)價(jià),售價(jià))</p><p>  2) 訂購(gòu)表(商品ID,顧客ID,訂貨日期,訂購(gòu)數(shù)量,交貨日期,處理狀態(tài))</p><p>  3) 顧客表(顧客ID,顧客名,電話(huà),地址,社會(huì)保險(xiǎn)號(hào)碼,注冊(cè)日期,密碼)</p><p>

19、;  3.1、規(guī)范化的數(shù)據(jù)關(guān)系模式 </p><p>  經(jīng)分析轉(zhuǎn)換的關(guān)系模式如下:</p><p>  1) 商品信息表(商品ID,商品名稱(chēng),保質(zhì)期,生產(chǎn)日期,庫(kù)存量,廠(chǎng)家,進(jìn)價(jià),售價(jià))</p><p>  2) 訂購(gòu)表(商品ID,顧客ID,訂貨日期,訂購(gòu)數(shù)量,交貨日期,處理狀態(tài))</p><p>  3) 顧客表(顧客ID,顧客名,電話(huà)

20、,地址,社會(huì)保險(xiǎn)號(hào)碼,注冊(cè)日期,密碼)</p><p>  3.2.數(shù)據(jù)庫(kù)及表結(jié)構(gòu)的創(chuàng)建</p><p>  創(chuàng)建名為“訂購(gòu)管理系統(tǒng)”的數(shù)據(jù)庫(kù),并創(chuàng)建各表,各表結(jié)構(gòu)如下:</p><p><b>  創(chuàng)建訂購(gòu)表:</b></p><p><b>  創(chuàng)建顧客表:</b></p><

21、;p><b>  創(chuàng)建商品信息表:</b></p><p>  4、物理結(jié)構(gòu)設(shè)計(jì)與實(shí)現(xiàn)</p><p>  對(duì)一個(gè)給定的邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)的過(guò)程,稱(chēng)為數(shù)據(jù)庫(kù)的物理設(shè)計(jì)。 所以數(shù)據(jù)庫(kù)的物理設(shè)計(jì),主要指物理設(shè)備上的存儲(chǔ)結(jié)構(gòu)和存取方法。 </p><p>  用戶(hù)DBMS OS DB 用戶(hù)標(biāo)識(shí)和鑒別 存取控制 操作系統(tǒng)

22、安全保護(hù) 數(shù)據(jù)密碼存儲(chǔ) 物理設(shè)計(jì)的步驟 :(1)存儲(chǔ)記錄結(jié)構(gòu)設(shè)計(jì);(2)確定數(shù)據(jù)存儲(chǔ)安排 ;(3)訪(fǎng)問(wèn)方法的設(shè)計(jì) ;(4)完整性和安全性 ;(5)程序設(shè)計(jì); </p><p>  所采用的數(shù)據(jù)庫(kù)系統(tǒng)為sql2005,系統(tǒng)自動(dòng)為建好的數(shù)據(jù)庫(kù)分配了數(shù)據(jù)的存儲(chǔ)地址。</p><p><b>  4.1創(chuàng)建觸發(fā)器</b></p><p>  1、創(chuàng)建

23、訂貨日期大于注冊(cè)日期的觸發(fā)器</p><p>  create Trigger tri_c</p><p>  on 訂購(gòu)表 after insert,update </p><p><b>  as </b></p><p>  if exists(select * from 訂購(gòu)表 d join 顧客表 c on d

24、.顧客ID=c.顧客ID</p><p>  WHERE d.訂貨日期<=c.注冊(cè)日期)</p><p><b>  rollback</b></p><p>  2、創(chuàng)建顧客id的級(jí)聯(lián)更新的觸發(fā)器</p><p>  create trigger tri_d</p><p>  on 顧客

25、表 after update </p><p><b>  as</b></p><p>  update 顧客表 set 顧客ID=</p><p><b>  (</b></p><p>  SELECT 顧客ID FROM INSERTED)</p><p>  WH

26、ERE 顧客ID IN (</p><p>  select 顧客ID from deleted )</p><p>  3、創(chuàng)建訂購(gòu)數(shù)量大于或等于庫(kù)存量的觸發(fā)器</p><p>  create Trigger tri_w</p><p>  on 訂購(gòu)表 after insert,update </p><p>&

27、lt;b>  as </b></p><p>  if exists(select * from 訂購(gòu)表 d join 商品信息表 c on d.商品ID=c.商品ID</p><p>  WHERE d.訂購(gòu)數(shù)量<=c.庫(kù)存量)</p><p><b>  rollback</b></p><p&g

28、t;  4、創(chuàng)建商品ID級(jí)聯(lián)更新的觸發(fā)器</p><p>  USE [網(wǎng)上訂購(gòu)明細(xì)庫(kù)]</p><p><b>  GO</b></p><p>  /****** Object: Trigger [dbo].[tri_s] Script Date: 12/26/2015 23:39:57 ******/</p><

29、;p>  SET ANSI_NULLS ON</p><p><b>  GO</b></p><p>  SET QUOTED_IDENTIFIER ON</p><p><b>  GO</b></p><p>  ALTER trigger [dbo].[tri_s]</p>

30、<p>  on [dbo].[訂購(gòu)表] after update </p><p><b>  as</b></p><p>  update 商品信息表 set 商品ID=</p><p><b>  (</b></p><p>  SELECT 商品ID FROM INSER

31、TED)</p><p>  WHERE 商品ID IN (</p><p>  select 商品ID from deleted )</p><p>  5、創(chuàng)建訂購(gòu)日期大于或等于交貨日期的觸發(fā)器</p><p>  USE [網(wǎng)上訂購(gòu)明細(xì)庫(kù)]</p><p><b>  GO</b></

32、p><p>  /****** Object: Trigger [dbo].[tri_v] Script Date: 12/26/2015 23:40:57 ******/</p><p>  SET ANSI_NULLS ON</p><p><b>  GO</b></p><p>  SET QUOTED_ID

33、ENTIFIER ON</p><p><b>  GO</b></p><p>  ALTER Trigger [dbo].[tri_v]</p><p>  on [dbo].[訂購(gòu)表] after insert,update </p><p><b>  as </b></p>

34、<p>  if exists(select * from 訂購(gòu)表 d </p><p>  WHERE d.訂貨日期>=d.交貨日期)</p><p><b>  rollback</b></p><p><b>  4.2創(chuàng)建索引</b></p><p><b>  1

35、、創(chuàng)建索引</b></p><p>  create index ename_ind</p><p>  on 訂購(gòu)表(訂貨日期)</p><p><b>  4.3創(chuàng)建視圖</b></p><p><b>  1、創(chuàng)建視圖</b></p><p>  creat

36、e view v_is_s1(商品名稱(chēng),庫(kù)存量,售價(jià),生產(chǎn)日期,保質(zhì)期)</p><p><b>  as </b></p><p>  select c.商品名稱(chēng),庫(kù)存量,售價(jià),生產(chǎn)日期,保質(zhì)期 from 訂購(gòu)表 c join 商品信息表 d </p><p>  on c.商品ID=d.商品ID</p><p>&l

37、t;b>  4.4創(chuàng)建存儲(chǔ)過(guò)程</b></p><p><b>  1、創(chuàng)建存儲(chǔ)過(guò)程</b></p><p>  create procedure 商品信息表_商品ID</p><p>  @商品ID char(15)</p><p><b>  as</b></p>

38、<p>  select c.商品名稱(chēng),進(jìn)價(jià),售價(jià),訂購(gòu)數(shù)量</p><p>  from 商品信息表 c join 訂購(gòu)表 d on</p><p>  c.商品ID=d.商品ID</p><p>  where c.商品ID=@商品ID</p><p>  exec 商品信息表_商品ID '2'</p&g

39、t;<p><b>  2、創(chuàng)建存儲(chǔ)過(guò)程</b></p><p>  create procedure 商品信息表_訂貨日期</p><p>  @訂貨日期 varchar(20)</p><p><b>  as</b></p><p>  select c.商品ID,進(jìn)價(jià),售價(jià),訂

40、購(gòu)數(shù)量</p><p>  from 商品信息表 c join 訂購(gòu)表 d on</p><p>  c.商品ID=d.商品ID</p><p>  where 訂貨日期=@訂貨日期</p><p>  exec 商品信息表_訂貨日期 '20141209'</p><p><b>  5、數(shù)據(jù)

41、實(shí)施和維護(hù)</b></p><p>  5.1、數(shù)據(jù)庫(kù)完整性</p><p>  數(shù)據(jù)庫(kù)完整性是指數(shù)據(jù)庫(kù)中數(shù)據(jù)的正確性和相容性。數(shù)據(jù)庫(kù)完整性由各種各樣的完整性約束來(lái)保證,因此可以說(shuō)數(shù)據(jù)庫(kù)完整性設(shè)計(jì)就是數(shù)據(jù)庫(kù)完整性約束的設(shè)計(jì)。數(shù)據(jù)庫(kù)完整性約束可以通過(guò)DBMS或應(yīng)用程序來(lái)實(shí)現(xiàn),基于DBMS的完整性約束作為模式的一部分存入數(shù)據(jù)庫(kù)中。通過(guò)DBMS實(shí)現(xiàn)的數(shù)據(jù)庫(kù)完整性按照數(shù)據(jù)庫(kù)設(shè)計(jì)步驟進(jìn)行

42、設(shè)計(jì),而由應(yīng)用軟件實(shí)現(xiàn)的數(shù)據(jù)庫(kù)完整性則納入應(yīng)用軟件設(shè)計(jì)</p><p>  數(shù)據(jù)庫(kù)完整性對(duì)于數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)非常關(guān)鍵,其作用主要體現(xiàn)在以下幾個(gè)方面:</p><p>  1.?dāng)?shù)據(jù)庫(kù)完整性約束能夠防止合法用戶(hù)使用數(shù)據(jù)庫(kù)時(shí)向數(shù)據(jù)庫(kù)中添加不合語(yǔ)義的數(shù)據(jù)。</p><p>  2.利用基于DBMS的完整性控制機(jī)制來(lái)實(shí)現(xiàn)業(yè)務(wù)規(guī)則,易于定義,容易理解,而且可以降低應(yīng)用程序的復(fù)雜性

43、,提高應(yīng)用程序的運(yùn)行效率。同時(shí),基于DBMS的完整性控制機(jī)制是集中管理的,因此比應(yīng)用程序更容易實(shí)現(xiàn)數(shù)據(jù)庫(kù)的完整性。</p><p>  3.合理的數(shù)據(jù)庫(kù)完整性設(shè)計(jì),能夠同時(shí)兼顧數(shù)據(jù)庫(kù)的完整性和系統(tǒng)的效能。比如裝載大量數(shù)據(jù)時(shí),只要在裝載之前臨時(shí)使基于DBMS的數(shù)據(jù)庫(kù)完整性約束失效,此后再使其生效,就能保證既不影響數(shù)據(jù)裝載的效率又能保證數(shù)據(jù)庫(kù)的完整性。</p><p>  4.在應(yīng)用軟件的功能

44、測(cè)試中,完善的數(shù)據(jù)庫(kù)完整性有助于盡早發(fā)現(xiàn)應(yīng)用軟件的錯(cuò)誤。在實(shí)施數(shù)據(jù)庫(kù)完整性設(shè)計(jì)的時(shí)候,有一些基本的原則需要把握:</p><p>  1) 根據(jù)數(shù)據(jù)庫(kù)完整性約束的類(lèi)型確定其實(shí)現(xiàn)的系統(tǒng)層次和方式,并提前考慮對(duì)系統(tǒng)性能的影響。一般情況下,靜態(tài)約束應(yīng)盡量包含在數(shù)據(jù)庫(kù)模式中,而動(dòng)態(tài)約束由應(yīng)用程序?qū)崿F(xiàn)。</p><p>  2) 實(shí)體完整性約束、參照完整性約束是關(guān)系數(shù)據(jù)庫(kù)最重要的完整性約束,在不影響

45、系統(tǒng)關(guān)鍵性能的前提下需盡量應(yīng)用。用一定的時(shí)間和空間來(lái)?yè)Q取系統(tǒng)的易用性是值得的。</p><p><b>  5.2、安全性設(shè)計(jì)</b></p><p>  數(shù)據(jù)庫(kù)的安全性是指保護(hù)數(shù)據(jù)庫(kù)以防止不合法的使用所造成的數(shù)據(jù)泄露、更改或破壞。系統(tǒng)安全保護(hù)措施是否有效是數(shù)據(jù)庫(kù)系統(tǒng)的主要指標(biāo)之一。數(shù)據(jù)庫(kù)的安全性和計(jì)算機(jī)系統(tǒng)的安全性,包括操作系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)的安全性是緊密聯(lián)系、相互支持

46、的。 </p><p>  信息系統(tǒng)盡管功能強(qiáng)大,技術(shù)先進(jìn),但由于受到自身體系結(jié)構(gòu),設(shè)計(jì)思路以及運(yùn)行機(jī)制 等限制,也隱含許多不安全因素。常見(jiàn)因素有:數(shù)據(jù)的輸入,輸出,存取與備份,源程序以及應(yīng)用軟件,數(shù)據(jù)庫(kù),操作系統(tǒng)等漏洞或缺陷,硬件,通信部分的漏洞,企業(yè)內(nèi)部人員的因素,病毒,“黑客”等因素。因此,為使本系統(tǒng)能夠真正安全,可靠,穩(wěn)定地工作,必須考慮如下問(wèn)題:為保證安全,不致使系統(tǒng)遭到意外事故的損害,系統(tǒng)因該能防止火

47、,盜或其他形式的人為破壞。</p><p>  SQL Server提供多層安全。在最外層,SQL Server的登錄安全性直接集成到Widows NT/2000的安全上,它允許Windows NT服務(wù)器驗(yàn)證用戶(hù)。使用這種"Windows 驗(yàn)證"SQL Server就可以利用Windows NT/2000的安全特性,例如安全驗(yàn)證和密碼加密、審核、密碼過(guò)期、最短密碼長(zhǎng)度,以及在多次登錄請(qǐng)求無(wú)效后

48、鎖定帳號(hào)。</p><p><b>  6、總結(jié)</b></p><p>  通過(guò)本次大作業(yè)的練習(xí),本次的大作業(yè)總共涉及的科目有wb編程語(yǔ)言應(yīng)用,數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)與分析,還有sql server數(shù)據(jù)庫(kù)語(yǔ)言的實(shí)際操作應(yīng)用,并且對(duì)于總體的項(xiàng)目開(kāi)發(fā)計(jì)劃也有了基本的概念,在做系統(tǒng)的的過(guò)程中從對(duì)系統(tǒng)懵懂,模糊,零星的思路,到最后整體設(shè)計(jì)思路的形成,都是經(jīng)過(guò)反復(fù)的經(jīng)過(guò)推敲和研究出來(lái)

49、的,其中大量的查閱有關(guān)書(shū)籍和資料,每一個(gè)人都把自己的想法和思路提出來(lái),組員經(jīng)過(guò)討論和分析在決定最后的ER圖,畫(huà)好之后,可以說(shuō)這個(gè)數(shù)據(jù)庫(kù)已經(jīng)可以呈現(xiàn)在腦海里了,但是為了更好的優(yōu)化和設(shè)計(jì)出所需要的系統(tǒng),就應(yīng)該對(duì)ER圖進(jìn)行冗余檢查,對(duì)ER圖進(jìn)行全面的優(yōu)化,盡量使它符合3NF模式,最后用oracle語(yǔ)句實(shí)現(xiàn)你的數(shù)據(jù)庫(kù)。通過(guò)這次課程設(shè)計(jì),我們覺(jué)得我們收獲的遠(yuǎn)不止于這個(gè)系統(tǒng)的設(shè)計(jì),而是對(duì)于數(shù)據(jù)庫(kù)系統(tǒng)的開(kāi)發(fā)設(shè)計(jì)步驟與方法的實(shí)踐掌握,我們覺(jué)得這是對(duì)我們

50、系統(tǒng)開(kāi)發(fā)能力最好的訓(xùn)練和考核,它不僅僅是一次考核方式,還是一次真正的項(xiàng)目開(kāi)發(fā)實(shí)踐,為以后的工作打好了一個(gè)堅(jiān)實(shí)的基礎(chǔ),雖然不至于到精通,但至少可以做到知道怎么干和從哪干起。這次的課程設(shè)計(jì)中有很多知識(shí)是我們課堂上沒(méi)有學(xué)習(xí)過(guò)的,這就要求我們自己去查閱相關(guān)的書(shū)籍。正是這樣給了</p><p><b>  7、附錄</b></p><p><b>  7.1創(chuàng)建觸發(fā)器

51、</b></p><p>  1、創(chuàng)建訂貨日期大于注冊(cè)日期的觸發(fā)器</p><p>  create Trigger tri_c</p><p>  on 訂購(gòu)表 after insert,update </p><p><b>  as </b></p><p>  if exist

52、s(select * from 訂購(gòu)表 d join 顧客表 c on d.顧客ID=c.顧客ID</p><p>  WHERE d.訂貨日期<=c.注冊(cè)日期)</p><p><b>  rollback</b></p><p>  2、創(chuàng)建顧客id的級(jí)聯(lián)更新的觸發(fā)器</p><p>  create trig

53、ger tri_d</p><p>  on 顧客表 after update </p><p><b>  as</b></p><p>  update 顧客表 set 顧客ID=</p><p><b>  (</b></p><p>  SELECT 顧客ID FR

54、OM INSERTED)</p><p>  WHERE 顧客ID IN (</p><p>  select 顧客ID from deleted )</p><p>  3、創(chuàng)建訂購(gòu)數(shù)量大于或等于庫(kù)存量的觸發(fā)器</p><p>  create Trigger tri_w</p><p>  on 訂購(gòu)表 after

55、 insert,update </p><p><b>  as </b></p><p>  if exists(select * from 訂購(gòu)表 d join 商品信息表 c on d.商品ID=c.商品ID</p><p>  WHERE d.訂購(gòu)數(shù)量<=c.庫(kù)存量)</p><p><b>  

56、rollback</b></p><p>  4、創(chuàng)建商品ID級(jí)聯(lián)更新的觸發(fā)器</p><p>  USE [網(wǎng)上訂購(gòu)明細(xì)庫(kù)]</p><p><b>  GO</b></p><p>  /****** Object: Trigger [dbo].[tri_s] Script Date: 12/26

57、/2015 23:39:57 ******/</p><p>  SET ANSI_NULLS ON</p><p><b>  GO</b></p><p>  SET QUOTED_IDENTIFIER ON</p><p><b>  GO</b></p><p>  

58、ALTER trigger [dbo].[tri_s]</p><p>  on [dbo].[訂購(gòu)表] after update </p><p><b>  as</b></p><p>  update 商品信息表 set 商品ID=</p><p><b>  (</b></p&g

59、t;<p>  SELECT 商品ID FROM INSERTED)</p><p>  WHERE 商品ID IN (</p><p>  select 商品ID from deleted )</p><p>  5、創(chuàng)建訂購(gòu)日期大于或等于交貨日期的觸發(fā)器</p><p>  USE [網(wǎng)上訂購(gòu)明細(xì)庫(kù)]</p>

60、<p><b>  GO</b></p><p>  /****** Object: Trigger [dbo].[tri_v] Script Date: 12/26/2015 23:40:57 ******/</p><p>  SET ANSI_NULLS ON</p><p><b>  GO</b>

61、;</p><p>  SET QUOTED_IDENTIFIER ON</p><p><b>  GO</b></p><p>  ALTER Trigger [dbo].[tri_v]</p><p>  on [dbo].[訂購(gòu)表] after insert,update </p><p>

62、;<b>  as </b></p><p>  if exists(select * from 訂購(gòu)表 d </p><p>  WHERE d.訂貨日期>=d.交貨日期)</p><p><b>  rollback</b></p><p><b>  7.2創(chuàng)建索引</b

63、></p><p><b>  1、創(chuàng)建索引</b></p><p>  create index ename_ind</p><p>  on 訂購(gòu)表(訂貨日期)</p><p><b>  7.3創(chuàng)建視圖</b></p><p><b>  1、創(chuàng)建視圖&

64、lt;/b></p><p>  create view v_is_s1(商品名稱(chēng),庫(kù)存量,售價(jià),生產(chǎn)日期,保質(zhì)期)</p><p><b>  as </b></p><p>  select c.商品名稱(chēng),庫(kù)存量,售價(jià),生產(chǎn)日期,保質(zhì)期 from 訂購(gòu)表 c join 商品信息表 d </p><p>  on

65、 c.商品ID=d.商品ID</p><p><b>  7.4創(chuàng)建存儲(chǔ)過(guò)程</b></p><p><b>  1、創(chuàng)建存儲(chǔ)過(guò)程</b></p><p>  create procedure 商品信息表_商品ID</p><p>  @商品ID char(15)</p><p&

66、gt;<b>  as</b></p><p>  select c.商品名稱(chēng),進(jìn)價(jià),售價(jià),訂購(gòu)數(shù)量</p><p>  from 商品信息表 c join 訂購(gòu)表 d on</p><p>  c.商品ID=d.商品ID</p><p>  where c.商品ID=@商品ID</p><p>

67、  exec 商品信息表_商品ID '2'</p><p><b>  2、創(chuàng)建存儲(chǔ)過(guò)程</b></p><p>  create procedure 商品信息表_訂貨日期</p><p>  @訂貨日期 varchar(20)</p><p><b>  as</b></p&

68、gt;<p>  select c.商品ID,進(jìn)價(jià),售價(jià),訂購(gòu)數(shù)量</p><p>  from 商品信息表 c join 訂購(gòu)表 d on</p><p>  c.商品ID=d.商品ID</p><p>  where 訂貨日期=@訂貨日期</p><p>  exec 商品信息表_訂貨日期 '20141209'

69、;</p><p><b>  7.5、完整性約束</b></p><p>  1、創(chuàng)建顧客表的電話(huà)約束</p><p>  alter table 顧客表</p><p>  add constraint ck_o</p><p>  check(電話(huà) like '[0-9][0-9][

70、0-9][-][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]')</p><p>  2、創(chuàng)建地址默認(rèn)值約束</p><p>  alter table 顧客表</p><p>  add constraint df_c</p><p>  default 'UNKNOWN'for 地

71、址</p><p>  3、創(chuàng)建訂購(gòu)數(shù)量的約束</p><p>  alter table 訂購(gòu)表</p><p>  add constraint ch_O</p><p>  check(訂購(gòu)數(shù)量>0)</p><p>  4、創(chuàng)建訂貨日期和交貨日期的約束</p><p>  alte

72、r table 訂購(gòu)表</p><p>  add constraint ch_w</p><p>  check(訂貨日期<交貨日期)</p><p><b>  5、創(chuàng)建唯一值約束</b></p><p>  alter table 顧客表</p><p>  add constrain

73、t un_o</p><p>  unique (社會(huì)保險(xiǎn)號(hào)碼)</p><p>  6、修改唯一值的約束</p><p>  alter table 訂購(gòu)表</p><p>  add constraint df_p</p><p>  default '未處理' for 處理狀態(tài)</p>

74、<p>  7、修改商品id的約束</p><p>  alter table 商品信息表</p><p>  add constraint chk_商品ID</p><p>  check (商品ID like'[c][0-9][0-9][0-9]')</p><p>  8、修改顧客id的約束</p&g

75、t;<p>  alter table 顧客表</p><p>  add constraint chk_顧客ID</p><p>  check (顧客ID like'[0-9][0-9][0-9]')</p><p><b>  參考文獻(xiàn):</b></p><p>  1. 薩師炫等《

76、數(shù)據(jù)庫(kù)系統(tǒng)概論(第三版)》.北京高等教育出版社,2001</p><p>  2. 施伯樂(lè)等.《數(shù)據(jù)庫(kù)技術(shù)》.北京科學(xué)出版社,2002</p><p>  3. 王珊等.《數(shù)據(jù)庫(kù)系統(tǒng)原理教程》.北京清華大學(xué)出版社,1998</p><p>  4. 張龍祥等.《數(shù)據(jù)庫(kù)原理與設(shè)計(jì)》.北京人民郵電出版社,2002</p><p>  5.

77、 陳志泊等.《數(shù)據(jù)庫(kù)原理及應(yīng)用教程》.北京人民郵電出版社,2002</p><p>  6. 徐潔磐.《現(xiàn)代數(shù)據(jù)庫(kù)系統(tǒng)教程》.北京北京希望電子出版社,2002</p><p>  7. 周志逵等.《數(shù)據(jù)庫(kù)理論與新技術(shù)》.北京北京理工大學(xué)出版社,2001</p><p>  8. 李建中等.《數(shù)據(jù)庫(kù)系統(tǒng)原理》.北京電子工業(yè)出版社,1998</p>

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論