課程設(shè)計--倉庫管理系統(tǒng)數(shù)據(jù)庫的設(shè)計與實現(xiàn)_第1頁
已閱讀1頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  課程設(shè)計報告</b></p><p>  課程設(shè)計題目:倉庫管理系統(tǒng)數(shù)據(jù)庫的設(shè)計與實現(xiàn) </p><p>  專 業(yè):軟件工程</p><p>  班 級: </p><p>  姓 名: </p><p>

2、  學(xué) 號: </p><p>  指導(dǎo)教師: </p><p><b>  -目錄-</b></p><p>  實驗時間、地點(diǎn) …………………….………….3</p><p>  實驗?zāi)康?……………….…………….…………3</p><p>  課程設(shè)計要求

3、 .…………………….……………3</p><p>  課程設(shè)計題目及其描述 .……….………………3</p><p>  需求分析 ……………..….…….………………..3</p><p>  關(guān)系模式……………………………………………..3</p><p>  設(shè)計思路……………………………………………..4</p>&l

4、t;p>  倉庫管理系統(tǒng)E-R圖………………………………..4</p><p>  實現(xiàn)過程…………………………………………5</p><p>  實現(xiàn)總結(jié)(心得體會)………………………….15</p><p>  倉庫管理系統(tǒng)數(shù)據(jù)庫設(shè)計與實現(xiàn)</p><p><b>  一.實驗時間、地點(diǎn)</b></p&g

5、t;<p><b>  二.實驗?zāi)康?lt;/b></p><p>  通過本次課程設(shè)計讓學(xué)生能夠綜合運(yùn)用所學(xué)的關(guān)系數(shù)據(jù)庫原理知識解決并能設(shè)計一個實際問題,進(jìn)一步掌握數(shù)據(jù)庫原理的相關(guān)理論和數(shù)據(jù)庫的設(shè)計實現(xiàn)過程,進(jìn)一步提高學(xué)生的分析問題和解決問題的能力以及學(xué)生的動手能力。</p><p><b>  三、課程設(shè)計要求:</b></p&

6、gt;<p>  1.對各個系統(tǒng)進(jìn)行系統(tǒng)功能需求分析</p><p>  2. 數(shù)據(jù)庫設(shè)計分析階段,進(jìn)行詳細(xì)的數(shù)據(jù)庫需求分析,進(jìn)行概念數(shù)據(jù)庫的設(shè)計,畫出數(shù)據(jù)庫的E-R圖(局部和整體E-R圖)</p><p>  3. 設(shè)計出詳細(xì)的邏輯數(shù)據(jù)庫結(jié)構(gòu),將各個實體和聯(lián)系轉(zhuǎn)化為相應(yīng)的二維表即關(guān)系模式,指定各個關(guān)系的主關(guān)鍵字和外部關(guān)鍵字,并對各個關(guān)系的約束加以限定</p>

7、<p>  4. 通過企業(yè)管理器或是查詢分析器實現(xiàn)各個二維關(guān)系(建議最好用SQL代碼實現(xiàn)),要求建立相關(guān)的索引</p><p>  5. 根據(jù)系統(tǒng)功能需求設(shè)計相應(yīng)的查詢視圖</p><p>  6. 要求根據(jù)系統(tǒng)功能需求建立存儲過程</p><p>  7. 根據(jù)功能需求建立相應(yīng)的觸發(fā)器以保證數(shù)據(jù)的一致性</p><p>  8.

8、通過建立用戶和權(quán)限分配實現(xiàn)數(shù)據(jù)庫一定的安全性,考慮數(shù)據(jù)庫的備份與恢復(fù)(此內(nèi)容選作)</p><p>  四.倉庫管理系統(tǒng)數(shù)據(jù)庫的設(shè)計與實現(xiàn)</p><p>  描述:設(shè)計一個倉庫管理系統(tǒng),實現(xiàn)下列功能:</p><p>  零件信息登記(包括種類,名稱和庫存數(shù)量等信息);</p><p>  零件進(jìn)庫登記(包括種類,名稱和庫存數(shù)量等信息);&

9、lt;/p><p>  零件出庫登記(包括種類,名稱和庫存數(shù)量等信息);</p><p><b>  五.需求分析</b></p><p><b>  1.關(guān)系模式</b></p><p>  零件信息表(零件編號,零件名,材質(zhì),重量,數(shù)量,零件類型號,單價,生產(chǎn)商號)</p><p

10、>  入庫登記表(零件編號,零件名,入庫數(shù)量,貨主編號,入庫時間,入庫單價, 生產(chǎn)商號)</p><p>  出庫登記表(零件編號,零件名,出庫數(shù)量,出庫性質(zhì),提貨人員,出庫時間,出庫單價)</p><p><b>  2.設(shè)計思路</b></p><p>  首先,建立倉庫管理數(shù)據(jù)庫系統(tǒng),然后創(chuàng)建倉庫管理所需要

11、的三個二維表分別為零件信息表、入庫登記表、出庫登記表。要求數(shù)據(jù)庫具有基本的查詢插入刪除等功能,并具有一定的存儲過程,觸發(fā)器,索引,規(guī)則,視圖等操作。</p><p>  3.倉庫管理系統(tǒng)E—R圖</p><p><b>  六.實現(xiàn)過程</b></p><p><b>  /*建立數(shù)據(jù)庫*/</b></p>

12、<p>  /*創(chuàng)建倉庫管理系統(tǒng)*/</p><p>  create database 倉庫管理系統(tǒng)</p><p><b>  on</b></p><p>  (name=倉庫_dat,</p><p>  filename='D:\倉庫管理系統(tǒng)\倉庫管理.mdf',</p>

13、<p><b>  size=10,</b></p><p>  maxsize=150)</p><p><b>  log on</b></p><p>  (name=倉庫_log,</p><p>  filename='D:\倉庫管理系統(tǒng)\倉庫管理.ldf',&

14、lt;/p><p><b>  size=10,</b></p><p>  maxsize=80)</p><p><b>  /*建立表*/</b></p><p>  /*創(chuàng)建零件信息表*/</p><p>  create table 零件信息表</p>&

15、lt;p>  (零件編號 char(10) primary key,</p><p>  零件名 char(10) not null,</p><p>  材質(zhì) char(8) constraint 材質(zhì)_Cons not null default '鐵',</p><p>  重量 int not null,</p><p

16、>  數(shù)量 int not null,</p><p>  零件類型號 char(10) not null,</p><p>  單價 int constraint 單價_Chk check(單價 between 1 and 100) not null,</p><p>  生產(chǎn)商號 char(6))</p><p>  /*向零件信息

17、表中插入數(shù)據(jù)*/</p><p>  insert into 零件信息表 values('0001','螺絲','鐵',2,1000,'小號',1,'A101')</p><p>  insert into 零件信息表 values('0002','螺絲','鐵'

18、,4,1000,'中號',3,'A102')</p><p>  insert into 零件信息表 values('0003','螺絲','鐵',6,1000,'大號',6,'A103')</p><p>  insert into 零件信息表 values('0004

19、','齒輪','銅',2,1000,'標(biāo)準(zhǔn)',5,'B101')</p><p>  insert into 零件信息表 values('0005','蓋子','鋁',7,1000,'標(biāo)準(zhǔn)',2,'B102')</p><p>  inse

20、rt into 零件信息表 values('0006','螺栓','鐵',5,1000,'標(biāo)準(zhǔn)',4,'B103')</p><p>  insert into 零件信息表 values('0007','螺帽','鐵',3,1000,'小號',9,'C101

21、9;)</p><p>  insert into 零件信息表 values('0008','螺帽','鐵',5,1000,'中號',14,'C102')</p><p>  insert into 零件信息表 values('0009','螺帽','鐵',7,1

22、000,'大號',11,'C103')</p><p>  /*查看零件信息表*/</p><p><b>  select * </b></p><p>  from 零件信息表</p><p>  /*刪除零件信息表*/</p><p>  drop table

23、 零件信息表</p><p>  /*創(chuàng)建入庫登記表*/</p><p>  create table 入庫登記表</p><p>  (零件編號 char(10) not null,</p><p>  零件名 char(10) not null,</p><p>  入庫數(shù)量 int constraint 數(shù)量_C

24、ons not null default 1000,</p><p>  貨主編號 char(8)not null,</p><p>  入庫時間 datetime not null,</p><p><b>  入庫單價 int,</b></p><p>  生產(chǎn)商號 char(6),)</p><

25、p>  /*向入庫登記表中插入數(shù)據(jù)*/</p><p>  insert into 入庫登記表 values('0001','螺絲',1000,'N001','2012-12-5',1,'A101')</p><p>  insert into 入庫登記表 values('0002',&#

26、39;螺絲',1000,'N002','2012-12-6',3,'A102')</p><p>  insert into 入庫登記表 values('0003','螺絲',1000,'N003','2012-12-4',6,'A103')</p><p&g

27、t;  insert into 入庫登記表 values('0004','齒輪',1000,'N004','2012-12-3',5,'B101')</p><p>  insert into 入庫登記表 values('0005','蓋子',1000,'N005','2012-

28、12-5',2,'B102')</p><p>  insert into 入庫登記表 values('0006','螺栓',1000,'N006','2012-12-4',4,'B103')</p><p>  insert into 入庫登記表 values('0007

29、9;,'螺帽',1000,'N007','2012-12-6',9,'C101')</p><p>  insert into 入庫登記表 values('0008','螺帽',1000,'N008','2012-12-7',14,'C102')</p>&

30、lt;p>  insert into 入庫登記表 values('0009','螺帽',1000,'N009','2012-11-5',11,'C103')</p><p>  /*查看入庫登記表*/</p><p><b>  select *</b></p><

31、;p>  from 入庫登記表</p><p>  /*刪除入庫登記表*/</p><p>  drop table 入庫登記表</p><p>  /*創(chuàng)建出庫登記表*/</p><p>  create table 出庫登記表</p><p>  (零件編號 char(10) not null,</p&

32、gt;<p>  零件名 char(10) not null,</p><p>  出庫數(shù)量 int not null,</p><p>  出庫性質(zhì) char(8) constraint 出庫性質(zhì)_Chk check(出庫性質(zhì) in('售出','借出')),</p><p>  提貨人員 char(12) not nu

33、ll,</p><p>  出庫時間 datetime not null,</p><p>  出庫單價 int,)</p><p>  /*向出庫登記表中插入數(shù)據(jù)*/</p><p>  insert into 出庫登記表 values('0001','螺絲',500,'售出','張三

34、','2012-12-5',3)</p><p>  insert into 出庫登記表 values('0002','螺絲',300,'借出','李四','2012-12-6',5)</p><p>  /*查看出庫登記表*/</p><p><b>

35、  select *</b></p><p>  from 出庫登記表</p><p>  /*刪除出庫登記表*/</p><p>  drop table 出庫登記表</p><p>  -----------------------------------------------------------------------

36、--------</p><p>  /*查詢零件名為“螺絲”的信息*/</p><p>  select 零件信息表.零件編號,</p><p>  零件信息表.零件名,</p><p><b>  材質(zhì),</b></p><p><b>  重量,</b></p&g

37、t;<p><b>  數(shù)量,</b></p><p><b>  零件類型號,</b></p><p><b>  單價,</b></p><p>  零件信息表.生產(chǎn)商號,</p><p><b>  入庫單價,</b></p>

38、;<p><b>  入庫數(shù)量,</b></p><p><b>  貨主編號,</b></p><p><b>  入庫時間</b></p><p>  from 零件信息表,入庫登記表</p><p>  where(零件信息表.零件編號=入庫登記表.零件編號

39、 and 零件信息表.零件名='螺絲')</p><p>  -------------------------------------------------------------------------------</p><p><b>  /*信息的添加*/</b></p><p>  /*創(chuàng)建存儲過程*/</p

40、><p>  /*創(chuàng)建向表中添加信息的存儲過程*/</p><p>  create procedure insert_零件信息</p><p>  (@零件編號 char(10),</p><p>  @零件名 char(10),</p><p>  @材質(zhì) char(8),</p><p>  

41、@重量 char(6),</p><p><b>  @數(shù)量 int,</b></p><p>  @零件類型號 char(10),</p><p><b>  @單價 int,</b></p><p>  @生產(chǎn)商號 char(6))</p><p><b>  

42、as</b></p><p>  insert into 零件信息表 </p><p>  values(@零件編號,@零件名,@材質(zhì),@重量,@數(shù)量,@零件類型號,@單價,@生產(chǎn)商號)</p><p>  /*執(zhí)行向表中插入數(shù)據(jù)的存儲過程*/</p><p>  exec insert_零件信息 </p><

43、p>  @零件編號='0010',</p><p>  @零件名='齒輪',</p><p><b>  @材質(zhì)='鋼',</b></p><p><b>  @重量='2',</b></p><p>  @數(shù)量='200

44、',</p><p>  @零件類型號='標(biāo)準(zhǔn)',</p><p><b>  @單價=5,</b></p><p>  @生產(chǎn)商號='N010'</p><p>  /*查看插入數(shù)據(jù)后的表中信息*/</p><p><b>  select *

45、</b></p><p>  from 零件信息表</p><p>  /*刪除向表中插入信息的存儲過程*/</p><p>  drop procedure insert_零件信息</p><p>  ----------------------------------------------------------------

46、---------------</p><p><b>  /*數(shù)據(jù)刪除*/</b></p><p><b>  delete </b></p><p>  from 出庫登記表</p><p>  where 零件編號='0001'</p><p>  /*

47、查看刪除數(shù)據(jù)后的出庫登記表*/</p><p><b>  select *</b></p><p>  from 出庫登記表</p><p>  -------------------------------------------------------------------------------</p><p>

48、;<b>  /*視圖*/</b></p><p>  /*創(chuàng)建零件信息表視圖*/</p><p>  create view 零件信息表_S </p><p><b>  as </b></p><p><b>  select * </b></p><p

49、>  from 零件信息表</p><p>  /*查看零件信息表視圖*/</p><p><b>  select *</b></p><p>  from 零件信息表_S</p><p>  /*刪除零件信息表視圖*/</p><p>  drop view 零件信息表_S</p&

50、gt;<p>  /*--創(chuàng)建入庫登記表視圖:*/</p><p>  create view 入庫登記表_S </p><p><b>  as </b></p><p><b>  select * </b></p><p>  from 入庫登記表</p><

51、p>  /*查看入庫登記表視圖*/</p><p><b>  select *</b></p><p>  from 入庫登記表_S</p><p>  /*刪除入庫登記表視圖*/</p><p>  drop view 入庫登記表_S</p><p>  /*--創(chuàng)建出庫登記表視圖:*/

52、</p><p>  create view 出庫登記表_S </p><p><b>  as </b></p><p><b>  select * </b></p><p>  from 出庫登記表</p><p>  /*查看出庫登記表視圖*/</p>

53、<p><b>  select *</b></p><p>  from 出庫登記表_S</p><p>  /*刪除出庫登記表視圖*/</p><p>  drop view 出庫登記表_S</p><p>  ------------------------------------------------

54、-------------------------------</p><p><b>  /*索引*/</b></p><p>  /*創(chuàng)建并查詢零件信息表索引*/</p><p>  create unique index 零件信息_index on 零件信息表(零件編號)</p><p>  /*查看零件信息表索引

55、*/</p><p>  exec Sp_helpindex 零件信息表</p><p>  /*刪除零件信息表索引*/</p><p>  drop index 零件信息表.零件信息_index</p><p>  /*創(chuàng)建并查詢?nèi)霂斓怯洷硭饕?/</p><p>  create index 入庫登記_index

56、on 入庫登記表(零件編號)</p><p>  /*查看入庫登記表索引*/</p><p>  exec Sp_helpindex 入庫登記表</p><p>  /*刪除入庫登記表索引*/</p><p>  drop index 入庫登記表.入庫登記_index</p><p>  /*創(chuàng)建出庫登記表索引*/&l

57、t;/p><p>  create index 出庫登記_index1 on 出庫登記表(零件編號)</p><p>  create index 出庫登記_index2 on 出庫登記表(出庫數(shù)量)</p><p>  create index 出庫登記_index3 on 出庫登記表(出庫時間)</p><p>  /*查看出庫登記表索引*/

58、</p><p>  exec Sp_helpindex 出庫登記表</p><p>  /*刪除出庫登記表索引*/</p><p>  drop index 出庫登記表.出庫登記_index1</p><p>  drop index 出庫登記表.出庫登記_index2</p><p>  drop index 出庫

59、登記表.出庫登記_index3</p><p>  -------------------------------------------------------------------------------</p><p><b>  /*觸發(fā)器*/</b></p><p>  /*創(chuàng)建觸發(fā)器并向利用觸發(fā)器向表內(nèi)添加信息*/</p&g

60、t;<p>  create trigger ChangeDisplay</p><p><b>  on 零件信息表</b></p><p>  for insert</p><p><b>  as</b></p><p><b>  select * </b>

61、;</p><p>  from 零件信息表</p><p>  /*執(zhí)行觸發(fā)器并向利用觸發(fā)器向表內(nèi)添加信息:*/</p><p>  insert into 零件信息表 values('0018','鍵盤','黑色',3,100,'中號',14,'H010')</p>&

62、lt;p>  /*查看已建立的觸發(fā)器所涉及的表*/</p><p>  exec sp_depends 'ChangeDisplay'</p><p><b>  /*刪除觸發(fā)器*/</b></p><p>  drop trigger ChangeDisplay</p><p>  /*創(chuàng)建刪除相

63、關(guān)數(shù)據(jù)觸發(fā)器:*/</p><p>  create trigger Delete_Information_Trigger</p><p><b>  on 出庫登記表</b></p><p>  for delete</p><p><b>  as </b></p><p&g

64、t;<b>  begin</b></p><p><b>  delete</b></p><p>  from 零件信息表</p><p>  where 零件編號=any(select 零件編號 from deleted)</p><p><b>  delete</b>

65、</p><p>  from 入庫登記表</p><p>  where 零件編號=any(select 零件編號 from deleted)</p><p><b>  end </b></p><p>  /*查看已建立的觸發(fā)器*/</p><p>  exec sp_help'De

66、lete_Information_Trigger'</p><p><b>  /*刪除觸發(fā)器*/</b></p><p>  drop trigger Delete_Information_Trigger</p><p>  -------------------------------------------------------

67、------------------------</p><p>  /*創(chuàng)建數(shù)量在100—1000之間的規(guī)則,并綁定規(guī)則*/</p><p>  create rule 數(shù)量_rule </p><p><b>  as </b></p><p>  @數(shù)量>=100 and @數(shù)量<=1000<

68、/p><p>  /*數(shù)量在100—1000之間的規(guī)則,查看默認(rèn)*/</p><p>  exec sp_helptext'數(shù)量_rule'</p><p>  /*數(shù)量在100—1000之間的規(guī)則,綁定規(guī)則*/</p><p>  exec sp_bindrule '數(shù)量_rule','零件信息表.數(shù)量&

69、#39;</p><p>  /*數(shù)量在100—1000之間的規(guī)則,解除規(guī)則*/</p><p>  exec sp_unbindrule '零件信息表.數(shù)量'</p><p>  /*數(shù)量在100—1000之間的規(guī)則,刪除規(guī)*//</p><p>  drop rule 數(shù)量_rule</p><p>

70、;  -------------------------------------------------------------------------------</p><p><b>  /*權(quán)限*/</b></p><p>  /*系統(tǒng)權(quán)限與角色授予*/</p><p>  grant create table</p>&

71、lt;p>  to Administrator</p><p>  /*對象權(quán)限與角色授予*/</p><p>  grant select</p><p><b>  on 零件信息表</b></p><p><b>  to 張三</b></p><p>  wit

72、h grant option</p><p><b>  /*權(quán)限收回*/</b></p><p>  revoke select</p><p><b>  on 零件信息表</b></p><p><b>  from 李四</b></p><p>

73、<b>  七.實驗總結(jié)</b></p><p>  在此次數(shù)據(jù)庫的課程設(shè)計中,不可避免地遇到了各種各樣的問題,在課外有關(guān)于SQL的許多問題都是要靠自己去摸索的,在為期三天多忙碌而又緊張的實驗課里,我學(xué)到了許多書本上學(xué)不到的知識技能,由于時間關(guān)系,系統(tǒng)功能實現(xiàn)還不夠完善,使用不是很方便,而且該系統(tǒng)離實際使用也還有相當(dāng)?shù)木嚯x,需要我今后不斷的學(xué)習(xí)補(bǔ)充才有可能實現(xiàn)。</p><

溫馨提示

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

最新文檔

評論

0/150

提交評論