數(shù)據(jù)庫課程設(shè)計(jì)---報(bào)刊訂閱管理系統(tǒng)_第1頁
已閱讀1頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  課 程 設(shè) 計(jì)</b></p><p><b>  一、需求分析</b></p><p>  本系統(tǒng)主要有以下功能模塊:</p><p> ?。?)登陸功能:登陸系統(tǒng)為身份驗(yàn)證登錄。分為管理員登錄和一般用戶登錄。分別通過不同的用戶名和密碼進(jìn)入報(bào)刊訂閱管理接口,新的用戶需要注冊。</p&g

2、t;<p> ?。?)錄入新信息功能:對于管理員,包括新用戶信息和新報(bào)刊信息的錄入功能,信息一旦提交就存入到后臺數(shù)據(jù)庫中;普通用戶自行注冊進(jìn)行可以修改個(gè)人信息。</p><p>  (3)訂閱功能:用戶可以訂閱報(bào)刊,系統(tǒng)自動計(jì)算所需金額,并顯示在接口上;管理員不可訂閱報(bào)刊,必須以用戶身份訂閱報(bào)刊。</p><p>  (4)查詢功能:用戶可以查詢并顯示自己所訂閱的信息;管理員

3、可以按人員、報(bào)刊、部門分類查詢。查詢出的信息顯示在接口上,并且可以預(yù)覽和打印出結(jié)果。</p><p> ?。?)統(tǒng)計(jì)功能:管理員可以按用戶、部門、報(bào)刊統(tǒng)計(jì)報(bào)刊的銷售情況,并對一些重要的訂閱信息進(jìn)行統(tǒng)計(jì);普通用戶可以統(tǒng)計(jì)出自己的訂閱情況,并且可以預(yù)覽和打印出結(jié)果。</p><p>  (6)系統(tǒng)維護(hù)功能:數(shù)據(jù)的安全管理,主要是依靠管理員對數(shù)據(jù)庫里的信息進(jìn)行備份和恢復(fù),數(shù)據(jù)庫備份后,如果出了什

4、么意外可以恢復(fù)數(shù)據(jù)庫到當(dāng)時(shí)備份的狀態(tài),這提高了系統(tǒng)和數(shù)據(jù)的安全性,有利于系統(tǒng)的維護(hù)。</p><p><b>  二、概念設(shè)計(jì)</b></p><p>  在報(bào)刊訂閱管理系統(tǒng)中,應(yīng)該包涵管理員、訂單、用戶、報(bào)刊、部門、報(bào)刊類型六個(gè)模塊,他們直接的關(guān)系應(yīng)該是:管理員的登陸和使用;管理員處理訂單(各種信息);用戶的個(gè)人信息和使用情況;用戶可以訂閱的報(bào)刊信息;報(bào)刊的各種分類

5、。</p><p><b>  繪制E-R圖</b></p><p>  管理員(管理員名,密碼)</p><p>  訂單(訂單編號,用戶賬號,密碼,訂閱份數(shù),訂閱時(shí)間)</p><p>  部門(部門號,部門名稱)</p><p>  用戶(用戶賬號,密碼,真實(shí)姓名,身份證號,部門號,聯(lián)系地址

6、,聯(lián)系電話)</p><p>  報(bào)刊(分類編號,內(nèi)容介紹,季度訂價(jià),出版周期,出版報(bào)社,報(bào)刊名稱,報(bào)刊代號)</p><p>  報(bào)刊類別(分類編號,分類名稱)</p><p><b>  聯(lián)系類型結(jié)構(gòu)如下:</b></p><p>  處理(信息記錄,信息分類)</p><p><b&g

7、t;  定制(方式)</b></p><p><b>  擁有</b></p><p><b>  訂閱(數(shù)量,時(shí)間)</b></p><p><b>  包涵</b></p><p><b>  冗余問題檢查:</b></p>

8、<p>  在各關(guān)系模式中,可得出每個(gè)關(guān)系的屬性值都是不可分的,因此各關(guān)系模式都是規(guī)范化關(guān)系;又可從以上各關(guān)系模式中可得每個(gè)屬性都不傳遞依賴于各關(guān)系模式的候選鍵,且轉(zhuǎn)換后各個(gè)屬性值的數(shù)據(jù)并沒有丟失,數(shù)據(jù)共享率高,所以在ER模型向關(guān)系模式轉(zhuǎn)化時(shí)不存在冗余問題。</p><p><b>  三、圖形接口</b></p><p><b>  1、管理員表

9、</b></p><p><b>  2、部門表</b></p><p><b>  3、用戶表</b></p><p><b>  4、報(bào)刊類別表</b></p><p><b>  5、報(bào)刊信息表</b></p><p&

10、gt;<b>  6、訂單表</b></p><p><b>  四、表的界面</b></p><p><b>  1、管理員表</b></p><p><b>  2、部門表</b></p><p><b>  3、用戶表</b>&

11、lt;/p><p><b>  4、 報(bào)刊類別表</b></p><p><b>  5、 報(bào)刊信息表</b></p><p><b>  6、 訂單表</b></p><p><b>  五、數(shù)據(jù)庫的實(shí)現(xiàn)</b></p><p>  

12、1、用SQL語句創(chuàng)建數(shù)據(jù)庫</p><p>  create database 報(bào)刊訂閱管理系統(tǒng)</p><p><b>  on</b></p><p>  (NAME=報(bào)刊訂閱管理系統(tǒng)_date,</p><p>  filename='C:\報(bào)刊訂閱管理系統(tǒng)_date.mdf',</p>

13、<p><b>  size=3,</b></p><p>  MAXSIZE=10,</p><p>  FILEGROWTH=1)</p><p><b>  LOG ON </b></p><p>  (NAME ='報(bào)刊訂閱管理系統(tǒng)_log',</p>

14、;<p>  FILENAME='C:\報(bào)刊訂閱管理系統(tǒng)_log.ldf',</p><p><b>  SIZE=2MB,</b></p><p>  MAXSIZE=15MB,</p><p>  FILEGROWTH=1MB)</p><p><b>  GO</b&g

15、t;</p><p><b>  按F5執(zhí)行查詢</b></p><p><b>  2、新建表</b></p><p>  1、新建“管理員表”</p><p> ?。?)USE報(bào)刊訂閱管理系統(tǒng)</p><p><b>  GO</b></p&g

16、t;<p>  create table管理員表</p><p><b>  (</b></p><p>  管理員名 Varchar(50) NOT NULL,</p><p>  密碼 Varchar(50) NOT NULL,</p><p><b>  )</b

17、></p><p><b>  GO</b></p><p> ?。?)、按F5執(zhí)行查詢</p><p><b>  2、新建“部門表”</b></p><p> ?。?)USE報(bào)刊訂閱管理系統(tǒng)</p><p><b>  GO</b></p

18、><p>  create table部門表</p><p><b>  (</b></p><p>  部門號 int(4) NOT NULL,</p><p>  部門名 Varchar(50) NOT NULL,</p><p><b>  )</b>

19、</p><p><b>  GO</b></p><p> ?。?)、按F5執(zhí)行查詢</p><p><b>  3、新建“用戶表”</b></p><p> ?。?)USE報(bào)刊訂閱管理系統(tǒng)</p><p><b>  GO</b></p>

20、<p>  create table用戶表</p><p><b>  (</b></p><p>  用戶賬號 int(4) NOT NULL,</p><p>  密碼 Varchar(50) NOT NULL,</p><p>  真實(shí)姓名 Varch

21、ar(50) NOT NULL,</p><p>  身份證號 int(4) NOT NULL,</p><p>  聯(lián)系電話 int(4) NOT NULL,</p><p>  聯(lián)系地址 Varchar(50) NOT NULL,</p><p>  部門號 int(

22、4) NOT NULL,</p><p><b>  )</b></p><p><b>  GO</b></p><p>  (2)、按F5執(zhí)行查詢</p><p>  4、新建“報(bào)刊類別表”</p><p> ?。?)USE報(bào)刊訂閱管理系統(tǒng)</p>

23、;<p><b>  GO</b></p><p>  create table報(bào)刊類別表</p><p><b>  (</b></p><p>  分類編號 int(4) NOT NULL,</p><p>  分類名稱 Varchar(50) NOT NULL

24、,</p><p><b>  )</b></p><p><b>  GO</b></p><p>  (2)、按F5執(zhí)行查詢</p><p>  5、新建“報(bào)刊信息表”</p><p> ?。?)USE報(bào)刊訂閱管理系統(tǒng)</p><p><b&

25、gt;  GO</b></p><p>  create table報(bào)刊信息表</p><p><b>  (</b></p><p>  報(bào)刊代號 int(4) NOT NULL,</p><p>  報(bào)刊名稱 Varchar(50) NOT NULL,</p>

26、<p>  出版報(bào)社 Varchar(50 ) NOT NULL,</p><p>  出版周期 int(4) NOT NULL,</p><p>  季度報(bào)價(jià) int(4) NOT NULL,</p><p>  內(nèi)容介紹 Varchar(50) NOT NULL,</p><p

27、>  分類編號 int(4) NOT NULL,</p><p><b>  )</b></p><p><b>  GO</b></p><p> ?。?)、按F5執(zhí)行查詢</p><p><b>  6、新建“訂單表”</b></p>

28、<p> ?。?)USE報(bào)刊訂閱管理系統(tǒng)</p><p><b>  GO</b></p><p>  create table訂單表</p><p><b>  (</b></p><p>  訂單編號 int(4) NOT NULL,</p><p&

29、gt;  用戶賬號 int(4) NOT NULL,</p><p>  報(bào)刊代號 int(4) NOT NULL</p><p>  訂閱份數(shù) int(4) NOT NULL</p><p>  訂閱月數(shù) int(4) NOT NULL</p><p><b>  )<

30、;/b></p><p><b>  GO</b></p><p> ?。?)、按F5執(zhí)行查詢</p><p><b>  六、創(chuàng)建主鍵</b></p><p>  1、管理員表主鍵的創(chuàng)建</p><p>  (1)、USE報(bào)刊訂閱管理系統(tǒng)</p><

31、;p><b>  GO</b></p><p>  alter table管理員表</p><p>  add constraint管理員名_管理員表</p><p>  primary key clustered</p><p><b>  (管理員名)</b></p><

32、;p><b>  go</b></p><p> ?。?)、按F5執(zhí)行查詢</p><p>  2、部門表主鍵的創(chuàng)建</p><p> ?。?)、USE報(bào)刊訂閱管理系統(tǒng)</p><p><b>  GO</b></p><p>  alter table部門表</

33、p><p>  add constraint部門號_部門表</p><p>  primary key clustered</p><p><b>  (部門號)</b></p><p><b>  go</b></p><p> ?。?)、按F5執(zhí)行查詢</p>

34、<p>  3、用戶表主鍵的創(chuàng)建</p><p> ?。?)、USE報(bào)刊訂閱管理系統(tǒng)</p><p><b>  GO</b></p><p>  alter table用戶表</p><p>  add constraint用戶賬號_用戶表</p><p>  primary key

35、clustered</p><p><b>  (用戶賬號)</b></p><p><b>  go</b></p><p> ?。?)、按F5執(zhí)行查詢</p><p>  4、報(bào)刊類別表主鍵的創(chuàng)建</p><p>  (1)、USE報(bào)刊訂閱管理系統(tǒng)</p>

36、<p><b>  GO</b></p><p>  alter table報(bào)刊類別表</p><p>  add constraint分類編號_報(bào)刊類別表</p><p>  primary key clustered</p><p><b>  (分類編號)</b></p>

37、<p><b>  go</b></p><p> ?。?)、按F5執(zhí)行查詢</p><p>  5、報(bào)刊信息表主鍵的創(chuàng)建</p><p> ?。?)、USE報(bào)刊訂閱管理系統(tǒng)</p><p><b>  GO</b></p><p>  alter table報(bào)

38、刊信息表</p><p>  add constraint報(bào)刊代號_報(bào)刊信息表</p><p>  primary key clustered</p><p><b>  (報(bào)刊代號)</b></p><p><b>  go</b></p><p>  (2)、按F5執(zhí)行查

39、詢</p><p>  6、訂單表主鍵的創(chuàng)建</p><p> ?。?)、USE報(bào)刊訂閱管理系統(tǒng)</p><p><b>  GO</b></p><p>  alter table訂單表</p><p>  add constraint訂單表_訂單表</p><p>  

40、primary key clustered</p><p><b>  (訂單表)</b></p><p><b>  go</b></p><p> ?。?)、按F5執(zhí)行查詢</p><p><b>  七、創(chuàng)建查詢</b></p><p><b

41、>  A、數(shù)據(jù)查詢</b></p><p>  1、查詢報(bào)刊信息表中出報(bào)版社為‘人民出版社’的記錄</p><p><b>  select *</b></p><p>  from 報(bào)刊信息表</p><p>  where 出版報(bào)社='人民出版社';</p><p

42、>  2、查詢訂單表中訂閱份數(shù)不大于4的訂單編號,用戶賬號,報(bào)刊代號,訂閱份數(shù),訂閱月份,并按訂閱份數(shù)降序排列。</p><p>  select 訂單編號,用戶賬號,報(bào)刊代號,訂閱份數(shù),訂閱月份</p><p><b>  from 訂單表</b></p><p>  where 訂閱份數(shù)<=4 </p><p

43、>  order by 訂閱份數(shù)desc</p><p>  3、查詢用戶表中部門號不為“1”的信息</p><p><b>  select *</b></p><p><b>  from 用戶表</b></p><p>  where NOT 部門號='1';</

44、p><p>  4、查詢用戶表中“用戶賬號=333333”的所有信息</p><p><b>  select *</b></p><p><b>  from 用戶表</b></p><p>  where 用戶賬號='333333'</p><p>  5、通

45、過用戶表和部門表兩表查詢部門名為客服部在用戶表中的真實(shí)姓名、身份證號、聯(lián)系電話、聯(lián)系地址</p><p>  select 真實(shí)姓名,身份證號,聯(lián)系電話,聯(lián)系地址</p><p><b>  from 用戶表</b></p><p>  where 部門號IN</p><p>  (select 部門號</p>

46、;<p><b>  from 部門表</b></p><p>  where 部門名='客服部');</p><p>  6、通過用戶表和訂單表兩表查詢訂閱份數(shù)最大的真實(shí)姓名、身份證號、聯(lián)系電話、聯(lián)系地址、部門號</p><p>  select 真實(shí)姓名,身份證號,聯(lián)系電話,聯(lián)系地址</p>&l

47、t;p><b>  from 用戶表</b></p><p>  where 用戶賬號IN</p><p>  (select 用戶賬號</p><p><b>  from 訂單表</b></p><p>  where 訂閱份數(shù)IN</p><p>  (Selec

48、t MAX(訂閱份數(shù))</p><p>  from 訂單表));</p><p>  7、查詢訂單表中訂閱份數(shù)的平均值、最高值和總和</p><p>  Select MAX(訂閱份數(shù)) 最高訂閱份數(shù)</p><p><b>  from 訂單表</b></p><p>  select avg

49、(訂閱份數(shù)) 平均訂閱份數(shù)</p><p><b>  from 訂單表</b></p><p>  select sum(訂閱份數(shù)) 總共訂閱份數(shù)</p><p><b>  from 訂單表</b></p><p>  8、通過報(bào)刊類別表和報(bào)刊信息表兩表查詢分類名稱為“女性”的報(bào)刊名稱,出版報(bào)社

50、,出版周期,季度報(bào)價(jià),內(nèi)容介紹</p><p>  select 報(bào)刊名稱,出版報(bào)社,出版周期,季度報(bào)價(jià),內(nèi)容介紹</p><p>  from 報(bào)刊信息表</p><p>  where 分類編號IN</p><p>  (select 分類編號</p><p>  from 報(bào)刊類別表</p><

51、;p>  where 分類名稱='女性');</p><p>  9、通過用戶表和訂單表兩表查詢訂閱份數(shù)為2并且訂閱月份為2的用戶賬號,密碼,真實(shí)姓名,身份證號,聯(lián)系電話,聯(lián)系地址</p><p>  select 用戶賬號,密碼,真實(shí)姓名,身份證號,聯(lián)系電話,聯(lián)系地址</p><p><b>  from 用戶表</b>

52、</p><p>  where 用戶賬號IN</p><p>  (select 用戶賬號</p><p><b>  from 訂單表</b></p><p>  where 訂閱份數(shù)='2' and 訂閱月份='2');</p><p>  10、報(bào)刊信息表、

53、用戶表和訂單表三表查詢身份證號為8321的用戶訂閱的報(bào)刊名稱,出版報(bào)社,出版周期,季度報(bào)價(jià),內(nèi)容介紹</p><p>  select 報(bào)刊名稱,出版報(bào)社,出版周期,季度報(bào)價(jià),內(nèi)容介紹</p><p>  from 報(bào)刊信息表</p><p>  where 報(bào)刊代號IN</p><p>  (select 報(bào)刊代號</p>&

54、lt;p><b>  from 訂單表</b></p><p>  where 用戶賬號IN</p><p>  (select 用戶賬號</p><p><b>  from 用戶表</b></p><p>  where 身份證號='8321')</p>&l

55、t;p><b>  );</b></p><p>  11、查詢分析器創(chuàng)建一個(gè)名為“view_2”的視圖,內(nèi)容是顯示用戶表</p><p>  中用戶賬戶為的用戶賬號、密碼 、聯(lián)系電話和聯(lián)系地址,并且為該視圖加密。</p><p>  Create view aaa</p><p>  WITH ENCRYPTIO

56、N</p><p>  As select 用戶賬號,密碼 ,聯(lián)系電話,聯(lián)系地址 </p><p><b>  from 用戶表</b></p><p>  where 用戶賬號='333333';</p><p><b>  B、數(shù)據(jù)更改</b></p><

57、p>  1、在用戶表中增加一行用戶賬號,密碼,真實(shí)姓名,身份證號,聯(lián)系電話,聯(lián)系地址,部門號分別為'000001','5646','王杰','2556','4554313','重慶萬州','2'的信息</p><p><b>  INSERT</b></p>&

58、lt;p>  INTO 用戶表(用戶賬號,密碼,真實(shí)姓名,身份證號,聯(lián)系電話,聯(lián)系地址,部門號)</p><p>  values ('000001','5646','王杰','2556','4554313','重慶萬州','2');</p><p>  2、刪除上面用戶表

59、中增加的信息</p><p><b>  Delete</b></p><p><b>  from 用戶表</b></p><p>  where 用戶賬號='000001';</p><p>  3、修改用戶表中用戶賬號為999999的密碼,修改密碼是1001</p>

60、<p>  update 用戶表</p><p>  set 密碼='1001'</p><p>  where 用戶賬號='999999'</p><p><b>  八、總結(jié)</b></p><p>  經(jīng)過這么長的時(shí)間,報(bào)刊訂閱管理系統(tǒng),基本完善。在這段時(shí)間里里,我利用

61、所學(xué)的知識,自己動手實(shí)踐寫代碼,做設(shè)計(jì),并逐步地實(shí)現(xiàn)這個(gè)小小的管理系統(tǒng)。整個(gè)過程中遇到了不少問題,也解決了不少問題,當(dāng)然也收獲了不少。</p><p>  首先在怎么設(shè)計(jì)數(shù)據(jù)庫時(shí),就花了一兩天時(shí)間,雖然涉及到的數(shù)據(jù)表只有六個(gè),但每個(gè)表都相對獨(dú)立有相互關(guān)聯(lián)。在設(shè)計(jì)的時(shí)候必須要考慮到表與表之間的關(guān)系,字段與字段之間的關(guān)聯(lián)。盡量做到數(shù)據(jù)冗余低,達(dá)到第三范式。根據(jù)需求分析,經(jīng)過翻來覆去的思考之后,才建好一個(gè)初步的數(shù)據(jù)庫。

62、一旦數(shù)據(jù)庫建好之后,后面的進(jìn)程就快了。主要是編碼過程。因?yàn)闆]什么流程可言,所有在寫代碼的時(shí)候也沒有考慮什么流程問題,只是實(shí)現(xiàn)簡單的增刪查改功能。在編碼的過程中還一邊寫一邊查數(shù)據(jù),慢慢地摸索著。</p><p>  當(dāng)然由于時(shí)間有限,還沒來得及做大量的測試,這其中肯定還有不少的錯(cuò)誤可能還沒發(fā)現(xiàn),還需下一階段繼續(xù)完善。</p><p>  總的來說,能夠做出一個(gè)東西出來,盡管不是很復(fù)雜,但通過

63、自己的大腦及雙手把他實(shí)現(xiàn),也算不錯(cuò)了。</p><p>  通過獨(dú)立完成本次課程設(shè)計(jì),我對數(shù)據(jù)庫這門課程有了更加深刻的理解。在對系統(tǒng)數(shù)據(jù)庫的分析、設(shè)計(jì)中,碰到很多概念上很模糊的問題,通過查閱相關(guān)數(shù)據(jù),問題得到了解決,設(shè)計(jì)工作也順利進(jìn)行。</p><p><b>  九、參考文獻(xiàn)</b></p><p>  [1] 錢雪忠.數(shù)據(jù)庫原理及應(yīng)用.北京

64、郵電大學(xué)出版社.2010</p><p>  [4] 薩師煊等編.數(shù)據(jù)庫系統(tǒng)概論:高等教育出版社,2006</p><p>  [5]王珊等.《數(shù)據(jù)庫系統(tǒng)概論》課程課件.2006</p><p>  [6]丁寶康等.數(shù)據(jù)庫實(shí)用教程[M].清華大學(xué)出版社.2002</p><p>  [7]丁寶康等.數(shù)據(jù)庫實(shí)用教程習(xí)題解答[M].清華大學(xué)出版社

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論