版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、報刊訂閱管理系統的開發(fā)與實現專業(yè): 計算機科學與技術 學號: 姓名:課程設計名稱: 數據庫原理及應用 設計題目: 報刊訂閱管理系統的設計與實現 完成期限:自 2009年 12 月 14 日至 2009 年 12 月 27 日共2 周設計依據、要求及主要內容(可另加附頁): 本系統主要面向的用戶有系統管理員、讀者。下面分角色對該系統的不同操作范圍做說明,主要有以下功能模塊:(1)登陸功能:登陸系統為身份驗證登錄。分為管理員登錄和一般用戶登錄.分別通過不同的用戶名和密碼進入報刊訂閱管理界面.(2)錄入新信息功能:對于管理員,包括新用戶信息和新報刊信息的錄入功能,信息一旦提交就存入到后臺數據庫中;普
2、通用戶自行注冊進行錄入個人信息。(3)訂閱功能:用戶可以訂閱報刊,系統自動計算所需金額,并顯示在界面上;管理員不可訂閱報刊,必須以用戶身份訂閱報刊。(4)查詢功能:用戶可以查詢并顯示自己所訂閱的信息;管理員可以按人員、報刊、部門分類查詢。查詢出的信息顯示在界面上。(5)統計功能:管理員可以按用戶、部門、報刊統計報刊的銷售情況,并對一些重要的訂閱信息進行統計;普通用戶可以統計出自己的訂閱情況。(6)系統維護功能:管理員可以對用戶、報刊、部門、訂閱等信息進行添加、刪除、更改等維護工作;用戶可以更改自己的注冊信息,但用戶名不能更改。指導教師(簽字): 教研室主任(簽字):批準日期: 年 月 日數據庫
3、原理與應用課程設計摘 要本系統是一個面向于企業(yè)的報刊訂閱管理系統。系統是智能化的管理系統,它面向所有企業(yè)部門的職工用戶,但具有安全性能。它能夠實現報刊訂閱的基本功能,包括新報刊信息的登錄、錄入、訂閱、查詢、統計等操作。用戶合法注冊后必須輸入有效密碼才能成功進入此系統,可以進行訂閱報刊,查詢信息,統計信息等操作。對于非法操作,系統有識別和防護措施。訂閱信息處理的特點是訂閱信息處理量比較大,所管理的信息信息種類繁多,而且訂閱單、編輯單的發(fā)生量特別大,關聯信息多,查詢和統計的方式各不相同。因此在管理上實現起來有一定因難. 系統在設計過程中,為了克服這些困難,需要使程序代碼標準化,軟件統一化,確保軟件
4、的可維護性和實用性;刪除不必要的管理冗余,實現管理規(guī)范化、科學化;界面友好、簡單化,做到實用、方便,盡量滿足報刊訂閱中員工的需要。關鍵詞: PowerBuilder;Microsoft SQL Server 2000;錄入;查詢;統計;訂閱;目 錄1 系統需求分析61.1 信息需求分析61.2 業(yè)務流程分析61.3 功能需求分析81。4 數據流圖81。5 數據字典 112 系統設計 132。1系統功能結構設計 132。2 數據庫概念設計132.3 數據庫邏輯設計 152。4 數據庫物理設計 173 系統實現與測試193。1 數據庫連接193。2 模塊功能實現20 3。2。1 菜單的實現20 3
5、.2。2 登錄模塊的實現21 3。2。3 錄入信息模塊的實現24 3.2.4 查詢信息模塊的實現25 3。2。5 統計信息模塊的實現28 3.2.6 訂閱報刊模塊的實現29 3。2.7 更改信息的實現32 3。3 系統測試 34總結41參考文獻421. 系統需求分析1.1 信息需求分析 1。3。1 資料收集:業(yè)務流程中用到的相關單據主要是報刊信息還有訂單信息報刊信息表:報刊代號46250報刊名稱IT時代周刊出版報社科技出版社出版周期半月刊每月定價10。00 元/月分類編號1001報刊介紹IT時代周刊是一本深刻解讀信息時代商業(yè)變革的雜志。除深度報道信息產業(yè)的重大新聞外,還報道金融、汽車
6、、股市、零售等傳統行業(yè)利用IT提升商業(yè)與管理的新聞。IT時代周刊以調查見深度;以商業(yè)故事見功力。是CEO/CIO/CFO以及政府官員、商業(yè)領袖首選刊物。訂單信息表:訂單編號報刊代號用戶編號訂閱日期訂閱月數份數操作3003462053206200871訂一月1取消訂閱300426-30631082008-78訂半年2取消訂閱30057231031002008-79訂一年1取消訂閱300645214254120087-10訂一季1取消訂閱1.2 業(yè)務流程分析:本系統主要面向的用戶有系統管理員、讀者。下面分角色對該系統的不同操作范圍做說明.下圖為該系統的業(yè)務流程圖1.3 功能需求分析 本系統的主要結
7、構功能圖如下: (1)登陸功能:登陸系統為身份驗證登錄.分為管理員登錄和一般用戶登錄。分別通過不同的用戶名和密碼進入報刊訂閱管理界面。(2)錄入新信息功能:對于管理員,包括新用戶信息和新報刊信息的錄入功能,信息一旦提交就存入到后臺數據庫中;普通用戶自行注冊進行錄入個人信息。(3)訂閱功能:用戶可以訂閱報刊,系統自動計算所需金額,并顯示在界面上;管理員不可訂閱報刊,必須以用戶身份訂閱報刊。(4)查詢功能:用戶可以查詢并顯示自己所訂閱的信息;管理員可以按人員、報刊、部門分類查詢。查詢出的信息顯示在界面上.(5)統計功能:管理員可以按用戶、部門、報刊統計報刊的銷售情況,并對一些重要的訂閱信息進行統計
8、;普通用戶可以統計出自己的訂閱情況。(6)系統維護功能:管理員可以對用戶、報刊、部門、訂閱等信息進行添加、刪除、更改等維護工作;用戶可以更改自己的注冊信息,但用戶名不能更改.1。4 數據流圖圖1。6.1 報刊訂閱管理系統頂層圖圖1.6。2 系統1層圖圖1。6。3 系統2層圖圖1。6。4 系統3層圖圖1。6。5 系統4層圖1.5 數據字典 (1)數據結構管理員用戶=管理員帳戶+管理員密碼訂戶=訂戶編號+訂戶名+聯系電話+聯系地址目錄=目錄編號+目錄名+單價+批注信息訂單=訂單號+訂戶編號+下訂日期訂單細節(jié)=訂單號+目錄編號+訂閱數量+訂閱期數+單價+總價(注:為保證訂單確定后價格不隨目錄單價變動
9、,訂單細節(jié)中應該有獨立的單價來記錄下訂時目錄的單價) (2)數據項表2。1 數據項表編號標識符類型長度所屬表名同義名1AnameVarchar20Administrator管理員帳戶2ApasswordVarchar20Administrator管理員密碼3UnameVarchar20Consumer訂戶名4UphoneVarchar15Consumer聯系電話5UAddressVarchar50Consumer聯系地址6Magazine_nameVarchar20Magazine目錄名7WholPriceFloat8MagazineSubscrible目錄單價,下訂時目錄單價8Snum In
10、t4Subscribe訂閱數量9Subscribenum Int4Subscribe訂閱期數10SnumFloat8Subscribe訂單項總價(3) 數據流編號名稱來源去向組成1身份信息系統管理員應用系統管理員帳戶+密碼2授權信息應用系統系統管理員3錯誤身份信息應用系統系統管理員4查詢請求系統管理員應用系統待查詢對象識別符(如Cid,Ono)5查詢結果應用系統系統管理員被查詢對象具體信息6管理請求系統管理員應用系統識別符(Cid,Ono等)+類型7管理結果信息應用系統系統管理員被管理對象處理結果8非法請求應用系統系統管理員非法請求提示信息表2。2 數據流表2 系統設計 2。1系統功能結構設計
11、 系統功能結構圖如下圖所示:圖2.1。1 系統功能結構圖2。2數據庫概念設計基本項構思ERD的四條基本原則:原則1 (確定實體):能獨立存在的事物,例如人、物、事、地、團體、機構、活動、事項等等,在其有多個由基本項描述的特性需要關注時,就應把它作為實體。原則2 (確定聯系):兩個或多個實體間的關聯與結合,如主管,從屬,組成,占有,作用,配合,協同等等,當需要予以關注時,應作為聯系.實體間的聯系可分為一對一、一對多、多對多等三類,在確定聯系時還要確定其類型。原則3 (確定屬性):實體的屬性是實體的本質特征.實體應有標識屬性(能把不同個體區(qū)分開來的屬性組),并指定其中一個作為主標識.聯系的屬性是聯
12、系的結果或狀態(tài)。原則4(一事一地):信息分析中得到的基本項要在且僅在實體聯系圖中的一個地方作為屬性出現。經過上述系統功能分析和需求總結,設計如下面所示的數據項和數據結構。l 管理員表(Administrator):用于存放管理員的數據記錄,包括數據項:管理員名、密碼。l 部門表(Department):用來存放部門的相關記錄,包括數據項:部門號,部門名。l 用戶表(Consumer):用于存放注冊用戶的記錄,包括數據項:用戶賬號、密碼、真實姓名、身份證號、聯系電話,聯系地址,部門號(和部門表有關)等.l 報刊信息表(magazine):用于存放報刊記錄,包括數據項:報刊代號、報刊名稱、出版報社
13、、出版周期、季度報價、內容介紹、分類編號(和報刊類別表有關)等。l 訂單表(subscribe):用于存放用戶下達的訂閱報刊的基本信息,包括數據項:訂單編號、用戶編號(用戶表的主碼)、報刊代號(報刊信息表的主碼)、訂閱份數、訂閱月數等。 根據上面的設計規(guī)劃出來的實體有部門實體、管理員實體、用戶實體、報刊信息實體和訂單實體。部門實體的E-R圖如下圖所示: 管理員實體的ER圖如下圖所示:用戶實體的ER圖如下圖所示: 報刊信息實體的ER圖如下圖所示:訂單實體的E-R圖如下圖所示: 所有實體之間的的關系ER圖如下圖所示:2.3 數據庫邏輯設計 (1)一般邏輯模型設計關系模型的邏輯結構是一組關系模式的集
14、合。將ER圖轉換為關系模型就是要將實體型、實體的屬性和實體型之間的聯系轉換為關系模式。由ERD導出一般關系模型的四條原則;一個1:1聯系可以轉換為一個獨立的關系模式,也可以與任意一端對應的關系模式合并。如果軟換為一個獨立的關系模式,則與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,每個實體的碼均是該關系的候選碼。如果與某一端實體對應的關系模式何明,則需要在該關系模式的屬性中加入另一個關系模式的碼和聯系本身的屬性。一個1:n聯系可以轉換為一個獨立的關系模式,也可以與n端對應的關系模式合并。如果轉換為一個獨立的關系模式,則與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,
15、而關系的碼為n端實體的碼。一個m:n聯系轉換為一個關系模式.與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,各實體的碼組成關系的碼或關系碼的一部分。3個或3個以上實體間的一個多元聯系可以轉換為一個關系模式。與該多元聯系項鏈呢的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,各實體的碼組成關系的碼或關系碼的一部分. 根據以上原則將E-R圖轉換成的關系模式如下:部門(部門號,部門名稱)用戶(用戶賬號,密碼,用戶真實姓名,聯系電話,聯系地址,部門號)管理員(管理員名,密碼)報刊類別(分類編號,分類名稱)報刊(報刊代號,報刊名稱,出版報社,出版周期,每月訂價,內容介紹,分類編號)訂單(用
16、戶名,報刊代號,訂閱份數,訂閱月數,訂閱總額)(2)具體邏輯模型設計在SQL Server2000數據庫中,首先創(chuàng)建報刊訂閱管理系統數據庫,然后根據數據庫的邏輯結構分析創(chuàng)建表4146的6張數據表。在前臺訪問數據庫階段設置了用戶和密碼,用戶為sa,密碼為空.表41 department部門表結構字段名稱字段類型允許空說明Dnumber(主碼)Char(10)否部門號DnameChar(50)否部門名稱表42 consumer用戶表結構字段名稱字段類型允許空說明Uname(主碼)Char(10)否用戶帳號UpasswordChar(20)是真實姓名UrealnameChar(10)否用戶密碼Use
17、xChar(150)是用戶聯系地址UphoneChar(20)是用戶聯系電話UaddressChar(10)否用戶所屬部門號SubscribenumChar(10)否訂閱數量表43 magazine報刊表結構字段名稱字段類型允許空說明mnumber(主碼)Char(10)否報刊代號mnameChar(40)否報刊名稱mkindInt(4)否報刊分類mpressChar(10)否出版報社mtimeChar(30)否出版日期mhalfpriceChar(10)否半年定價mwholeFloat(8)否全年定價表4-4 subscribe訂單表結構字段名稱字段類型允許空說明Uname(主碼)Char(
18、10)否用戶帳號Mnumber(主碼)Char(10)否報刊代號SyearInt(4)否訂閱份數SnumberInt(4)否訂閱月數SsumFloat(8)是訂閱總額表45 adminuser管理員表結構字段名稱字段類型允許空說明Aname(主碼)Char(10)否管理員用戶名ApasswordChar(10)否管理員密碼2.4 數據庫物理設計(1)索引的選擇建立由于系統可能要涉及大量數據的操作,所以索引的建立就成為一種必需。本系統采用B+樹索引方法,分別在各Consumer,magazine_query,consumer_stat和query_depat各個表的主鍵上建立關系表。(2)數據存
19、放位置本系統數據和索引存放在磁盤中.(3)確定系統配置根據具體需要配置。(4) 模塊設計登陸模塊圖2。4.1 登陸模塊IPO圖 管理功能模塊圖2.4。2 管理功能模塊IPO圖 查詢功能模塊圖2。4。3 查詢功能模塊IPO圖3 系統實現與測試 3。1 連接數據庫的實現打開PowerBuilder,新建一個magazine,新建一個Application,取名magazine,然后點擊工具欄上的DB Profile,新建一個MSS Microsoft SQL Server,填入Profile Name,服務器名,用戶名,密碼,數據庫,如下圖:連接數據庫:然后輸入連接數據庫的主要代碼:3.2 模塊功
20、能實現 3。2。1 菜單的實現 (1)制作管理員主菜單w_adminview,建管理員主界面w_mainmenu,將該菜單放到窗口中 (2)制作用戶主菜單w_consumer,建用戶主界面w_consumermain,將菜單放到窗口中3.2.2 登錄模塊的實現 (1)制作登錄頁面w_login1,在“確定”按鈕輸入如下:“注冊"按鈕代碼:open(w_enroll) /打開用戶注冊頁面“退出"按鈕代碼:close(w_login1) /退出本系統(2) 制作注冊窗口w_register,在“注冊”按鈕的代碼如下:“取消"按鈕代碼:close(w_register)
21、open(w_login)3。2.3錄入信息模塊的實現 (1)制作管理員主菜單里的錄入報刊信息窗口w_inputmagazine,錄入用戶信息窗口w_inputconsumer, (2)制作數據窗口d_consumer,d_magazien在數據窗口調整好外觀,添加控件,并設定相應的動作,分別放到這兩個窗口中這兩個窗口功能相識,在窗口中輸入:dw_1。settransobject(sqlca) dw_1.retrieve()dw_2。settransobject(sqlca) dw_2.retrieve()3。2。4 查詢信息模塊的實現 (1)制作管理員主菜單中的查詢訂閱信息窗口w_searc
22、horder,制作數據窗口dw_booksearch,將其放入窗體中,在窗口中輸入代碼:dw_1。settransobject(sqlca)dw_1。retrieve()sle_1。setfocus() 在“檢索”按鈕中輸入代碼:“返回"按鈕代碼: open(w_main) close(w_magazine_query) 數據窗口字段 如下圖: (2)按用戶查詢, 按鈕代碼如下: 返回代碼如下: open(w_main) close(w_consumer_ruery) 數據窗口字段如下: (3)用戶主菜單的查詢訂單窗口w_consumer_query,將訂單查找d_consumer_
23、ruery_c放到窗口里,在窗口中過過濾器篩選中用戶自己的訂單信息,一打開就可以看到自己的訂單信息,窗口代碼: 用戶統計d_consumer_query_c數據窗口如下:3.2.5統計信息模塊的實現 (1)制作管理員主菜單中的統計用戶訂單窗口w_stat_consumer,統計部門訂單窗口w_stat_department,統計報刊訂單窗口w_statconsumer:制作統計數據窗口d_consumer_stat,d_query_dept,w_stat_magazine,將d_consumer_stat,d_query_dept,w_stat_magazine分別放入w_stat_consu
24、mer,w_stat_department,w_statconsumer中;以下僅列出按出按部門統計的代碼和界面 (按用戶、報刊統計類似,略); 按部門統計代碼: 窗口代碼: 按部門統計數據窗口:dw_1。settransobject(sqlca)dw_1.retrieve() 預覽鍵代碼:(與上頁預覽代碼相同) 退出:close(parent)3.2。6 訂閱報刊模塊的實現(1)用戶主菜單的訂閱報刊窗口w_userorder該系統中定義了一個全局變量gs_userid,其它窗口界面都可以使用該變量,并顯示用戶名,用戶登錄后,它會顯示“,歡迎使用本系統!"的歡迎界面.窗口代碼:dw_
25、1。settransobject(sqlca) dw_1.retrieve()sle_1。setfocus()sle_2。text=gs_userid“清空"按鈕代碼:sle_1。text=” sle_3。text=” sle_5.text=”“退出”按鈕代碼:close(w_userorder)“提交"按鈕代碼:3。2。7 更改信息的實現 (1)用戶主菜單中的修改用戶信息窗口w_modify_consumer,打開會先顯示出你的信息,而用戶名這一欄是輸入不了的,也就是不能修改用戶名,窗口代碼如下:“確定”按鈕代碼如下:3。3 系統測試 打開本系統,首先彈出歡迎界面,選擇用
26、戶入口,點擊“新用戶注冊" 按確定后,彈出“恭喜,您已注冊成功!"的對話框。如果這時刷新服務管理器,打開SQL Server企業(yè)管理器,打開該數據庫的用戶表,就可看到剛才注冊的用戶已經在表中了。 然后返回到登陸頁面,輸入剛才注冊到的用戶名和密碼chen,1。 登錄后,彈出一個窗口,有供用戶使用的菜單,然后進入系統。 選擇“訂閱報刊”菜單,在這個訂閱界面,用戶可以瀏覽到所有的報刊信息,看到信息的下去,訂閱報刊時,輸入用戶名,密碼,報刊號,報刊名稱,訂閱數量(五年以下,一次只能增加0.5),訂閱年限,然后點擊“提交”按鈕 點擊“清空”按鈕就可以將輸入框中的內容。點擊上頁,下一頁
27、可以瀏覽報刊信息。 訂閱成功后,系統彈出“恭喜!你已成功訂閱該報刊,總金額是”確定后會顯示出您所訂閱的總額是多少元,按“清空”按鈕后可以訂閱其它報刊(同樣的報刊不可重復訂閱)。再訂閱其它報刊,然后按“下頁”按 由于權限的限制,“統計"菜單中的也是只能統計自己訂單信息的數據。 在“修改”信息菜單中,用戶名也是不可輸入的文本框,即不可修改用戶名,其它信息可以修改,保存后它會自動添加到數據庫中. 以管理員的身份登錄,用戶名admin,密碼admin,按登錄按鍵,可看到管理員菜單。 選擇菜單欄中的錄入錄入報刊信息,管理員可以大致瀏覽所有報刊信息,在上面的數據窗口可以查看上一頁和下一頁的具體內
28、容,并且可以對其進行添加,刪除、修改、保存等操作。 錄入用戶信息頁面,基本相似。 選擇菜單欄中的“查詢"->“訂單信息",管理員擁有的權限可以看到所有的訂單信息。 管理員也可以根據需要分別按部門、按用戶、按報刊查詢,結果如下: 菜單欄中的“統計”菜單有三個子菜單,管理員可以分別統計用戶訂單信息、部門訂單信息和報刊訂單信息, 直接選擇就可看到統計結果,比如選擇“統計用戶訂單信息”。結論關于這個課程設計,我的感觸很深,這是我很難得的非常認真獨立的做的一個課程設計.這個學期學習了PowerBuilder,所以選擇了使用Powerbuilder制作前臺,然后我也到圖書館借了幾
29、本用Powerbuilder制作課程設計的書,用了整整四天的時間,并且按著那本書上的例子動手實現幾個簡單的程序。當然,這中間也有某些書本說的不是很清楚的地方,只能靠著自己慢慢摸索,找出錯誤的地方,實現程序的運行。用PB做課程設計有了一定的認識以后,我開始著手這個課程設計,用了大約五天的時間。構思整個系統的整體框架,權限方面分開了管理員和用戶的登錄,管理員和用戶的菜單分別是哪些,每個菜單下的功能怎么實現,都一一設計代碼,然后修改,運行,調試。最后,整個系統基本上實現了所有要求,用戶可以訂閱報刊、查看和統計自己的訂單信息,也可修改自己的信息,除了用戶名。本系統的特色在于,用戶訂閱報刊非常方便,用戶登錄系統后,用戶名作為全局變量保存在系統中,進入訂閱菜單后,自動顯示用戶名,而用戶只需要輸入所要訂閱的報刊代號和訂閱份數,以及選擇需要訂閱的時間,系統會自動
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025事業(yè)單位員工勞動合同范本
- 二零二四年度云存儲服務租用合同
- 2025年度新能源汽車關鍵材料委托采購與供應鏈優(yōu)化合同4篇
- 2025年度車庫租賃合同解除條件及后續(xù)處理協議4篇
- 二零二五年度漫畫衍生品授權及銷售合作協議合同4篇
- 2025年度綠色大棚租賃與農產品品牌建設合同3篇
- 2025年度廚房消毒設備更新與技術支持合同4篇
- 2025年度純凈水灌裝設備生產線節(jié)能環(huán)保評估合同3篇
- 2025年專業(yè)廚師培訓機構學員實習合同范本3篇
- 二零二五年度奶牛養(yǎng)殖人才培養(yǎng)與職業(yè)培訓合同2篇
- 圖像識別領域自適應技術-洞察分析
- 個體戶店鋪租賃合同
- 新概念英語第二冊考評試卷含答案(第49-56課)
- 【奧運會獎牌榜預測建模實證探析12000字(論文)】
- 保安部工作計劃
- 2023痛風診療規(guī)范(完整版)
- (完整word版)企業(yè)對賬函模板
- 土力學與地基基礎(課件)
- 主要負責人重大隱患帶隊檢查表
- 魯濱遜漂流記人物形象分析
- 危險廢物貯存?zhèn)}庫建設標準
評論
0/150
提交評論