


版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、數據庫原理課程設計報告設計題目:網上訂購系統所在系別:班級:姓名:學號:組號:指導教師:年月日目錄一、需求分析 .21.1 開發背景和意義21.2 系統需求概況2二、概念結構設計 .42.1 、 各個表信息的實體圖設計.42.2 、 E-R 圖設計5三、邏輯結構設計 .63.1 、規范化的數據關系模式.73.2. 數據庫及表結構的創建.7四、物理結構設計與實現.9五、數據實施和維護 .125.1 、數據庫完整性 .125.2 、安全性設計 .13六、總結 .14七、附錄 .15第 1 頁1、需求分析1.1 開發背景和意義系統開發背景商業企業中,貨物銷售時,訂購是關鍵的環節。它直接關系到企業的銷
2、售業績,而在一個企業中,銷售是關系到企業生存的關鍵。隨著時代的發展,貨物訂購僅靠人力手工完成已經無法滿足企業發展的需要。而對商業企業來說,只有訂貨量越多的時候,才可能產生更多的利潤。使用訂貨管理系統來協助銷售部門管理訂單成為提高部門效率成為必須。系統開發意義網上訂貨管理作為計算機應用的一個分支,有著手工管理無法比擬的優點。該系統的三大益處有:(1)大大提高訂貨的運作效率;(2)通過全面的信息采集和處理,輔助提高訂貨的決策水平;(3)使用本系統,可以迅速提升訂貨的管理水平,為降低經營成本,提高效益,增強網上訂貨擴張力,提供有效的技術保障。因此,開發一套能夠為消費者及工作人員提提供方便的訂貨管理系
3、統,將是非常必要的,也是十分及時的。1.2 系統需求概況功能需求用戶登陸企業產品網站后,可以在線選購貨物,在選完貨物后,系統提供一張訂貨單,訂貨單已經包括用戶選過的貨物,送貨金額和訂單號,還有一些待用戶填寫的內容:訂貨數量,訂貨時間和交貨時間。用戶填好電子訂貨單后提交。系統將其填進系統數據庫,系統通知管理員可以發貨,。(1) 用戶登錄時,若用戶輸入的用戶名不存在時,則無法登錄,然后再重新登錄;用戶能夠根據不同權限添加、修改和刪除系統不同級別的數據。(2) 管理員登錄,可以從事以下操作:第 2 頁管理商品信息,可以對信息進行查詢、添加、修改。查看供貨商數據,并可以對數據進行管理。添加新商品功能,
4、可增加刪改商品信息。添加新商品,選擇商品類別,輸入商品名稱,進行商品說明。類別管理,可以更改類別名稱,可以添加和刪除類別。管理銷售單,可以銷售單進行條件查詢,并進行管理。查看庫存數據,并可以對數據進行管理。(3)用戶界面本系統采用 MicrosoftVisualStudio2008 設計,用戶交互界面采用的是基于 Windows的窗口界面,并結合TelerikRadControls forWinForms設計美觀易懂的用戶界面,數據庫采用Microsoft SQL Server 2005設計。數據需求分析(1)數據流程圖網上訂貨顧客管理員管理系統(2) 數據字典數據元素條目名稱數據類型長度有關
5、的數據結構商品 IDchar20訂購表顧客 IDchar10訂購表訂貨日期smalldatetime10訂購表訂貨數量int20訂購表交貨日期smalldatetime10訂購表處理狀態char20訂購表第 3 頁顧客名char10顧客表電話char12顧客表地址nchar30顧客表社會保險號碼char15顧客表密碼char10顧客表注冊日期smalldatetime10顧客表商品名稱char20商品信息表保質期char4商品信息表生產日期smalldatetime10商品信息表庫存量int20商品信息表廠家char20商品信息表進價float20商品信息表售價float29商品信息表2、概念
6、結構設計2.1、 各個表信息的實體圖設計在已經存在的需求分析的基礎上,經過分析抽象,畫出反應訂購管理系統的 E-R 圖:1) 訂購信息實體圖設計訂購表:此表記錄顧客訂購商品的所有信息,管理員通過此表進行信息查詢,添加,刪除,修改等操作。訂購實體圖如圖3-1 所示。處理狀態交貨日期訂購商品 ID訂購數量顧客 ID訂貨日期第4 頁2) 商品信息實體圖設計商品信息表:此表記錄超市所有商品信息, 管理員通過此表進行商品查詢,添加,刪除,修改等操作。商品信息實體圖如圖 3-2 所示。密碼社會保險號碼注冊日期顧客顧客名地址顧客 ID電話3) 顧客信息實體圖設計顧客表:此表記錄所有顧客基本信息,管理員通過此
7、表進行顧客查詢,添加,刪除,修改等操作。供應商信息實體圖如圖3-3 所示。進價商品名稱生產日期保質期商品信息售價廠家商品 ID庫存量2.2、 E-R 圖設計網上訂貨管理系統數據庫E-R 模型,如圖 3-9 所示:第 5 頁地址社會保電話注冊日顧客名顧客表密碼顧客 idn顧客 id商品 id訂購表交貨日期訂貨日期處理狀態訂購數量m售價商品信息表進價商品 id廠家保質期庫存量生產日期商品名稱3、邏輯結構設計實體的屬性就是關系的屬性,實體的碼就是關系的碼。對于實體間的聯系則有以下不同的情況:一個 m:n 聯系轉換為一個關系模式。與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,而關系的碼
8、為各實體碼的組合。一個 1:n 聯系可以轉換為一個獨立的關系模式,也可以與 n 端對應的關系模式合并。如果轉換為一個獨立的關系模式,則與該聯系相連的各實體的碼以第 6 頁及聯系本身的屬性均轉換為關系的屬性,而關系的碼為n 端實體的碼。一個 1:1 聯系可以轉換為一個獨立的關系模式,也可以與任意一端對應的關系模式合并。三個或三個以上實體間的一個多元聯系可以轉換為一個關系模式。與該多元聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,而關系的碼為各實體碼的組合實體型轉換為關系模式如下:1) 商品信息表(商品 ID ,商品名稱,保質期,生產日期,庫存量,廠家,進價,售價)2) 訂購表(商品
9、ID ,顧客 ID,訂貨日期,訂購數量,交貨日期,處理狀態)3) 顧客表(顧客 ID ,顧客名,電話,地址,社會保險號碼,注冊日期,密碼)3.1、規范化的數據關系模式經分析轉換的關系模式如下:1) 商品信息表(商品 ID,商品名稱,保質期,生產日期,庫存量,廠家,進價,售價)2) 訂購表(商品 ID,顧客 ID,訂貨日期,訂購數量,交貨日期,處理狀態)3) 顧客表(顧客 ID,顧客名,電話,地址,社會保險號碼,注冊日期,密碼)3.2.數據庫及表結構的創建創建名為“訂購管理系統”的數據庫,并創建各表,各表結構如下:創建訂購表:第 7 頁創建顧客表:第 8 頁創建商品信息表:4、物理結構設計與實現
10、對一個給定的邏輯數據模型選取一個最適合應用環境的物理結構的過程,稱為數據庫的物理設計。所以數據庫的物理設計, 主要指物理設備上的存儲結構和存取方法。用戶 DBMS OS DB 用戶標識和鑒別 存取控制 操作系統安全保護 數據密碼存儲 物理設計的步驟 :( 1)存儲記錄結構設計;(2)確定數據存儲安排 ;( 3)訪問方法的設計 ;(4)完整性和安全性 ;(5)程序設計;所采用的數據庫系統為 sql2005,系統自動為建好的數據庫分配了數據的存儲地址。4.1 創建觸發器1、創建訂貨日期大于注冊日期的觸發器create Trigger tri_con 訂購表 after insert,updatea
11、s第 9 頁if exists(select * from 訂購表d join 顧客表c on d.顧客 ID=c.顧客 IDWHERE d.訂貨日期 =c.注冊日期 )rollback2、創建顧客 id 的級聯更新的觸發器create trigger tri_don 顧客表after updateasupdate顧客表set 顧客 ID=(SELECT 顧客 ID FROM INSERTED)WHERE 顧客 ID IN (select 顧客 ID from deleted )3、創建訂購數量大于或等于庫存量的觸發器create Trigger tri_won 訂購表 after inser
12、t,updateasif exists(select * from 訂購表d join 商品信息表c on d.商品 ID=c.商品 IDWHERE d.訂購數量 =d.交貨日期 )rollback4.2 創建索引1、創建索引create index ename_indon 訂購表 (訂貨日期 )4.3 創建視圖1、創建視圖create view v_is_s1(商品名稱 ,庫存量 ,售價 ,生產日期 ,保質期 )as第11頁select c.商品名稱 ,庫存量 ,售價 ,生產日期 ,保質期from 訂購表c join 商品信息表don c.商品 ID=d.商品 ID4.4 創建存儲過程1、創
13、建存儲過程create procedure 商品信息表 _商品 ID商品 ID char(15)asselect c.商品名稱 ,進價 ,售價 ,訂購數量from 商品信息表c join 訂購表d onc.商品 ID=d. 商品 IDwhere c.商品 ID= 商品 IDexec 商品信息表 _商品 ID 22、創建存儲過程create procedure 商品信息表 _訂貨日期訂貨日期varchar(20)asselect c.商品 ID, 進價 ,售價 ,訂購數量from 商品信息表c join 訂購表d onc.商品 ID=d. 商品 IDwhere 訂貨日期 =訂貨日期exec 商品
14、信息表 _訂貨日期201412095、數據實施和維護5.1、數據庫完整性數據庫完整性是指數據庫中數據的正確性和相容性。數據庫完整性由各種各樣的完整性約束來保證,因此可以說數據庫完整性設計就是數據庫完整性約束的設計。數據庫完整性約束可以通過DBMS 或應用程序來實現, 基于 DBMS第12頁的完整性約束作為模式的一部分存入數據庫中。通過 DBMS 實現的數據庫完整性按照數據庫設計步驟進行設計,而由應用軟件實現的數據庫完整性則納入應用軟件設計數據庫完整性對于數據庫應用系統非常關鍵,其作用主要體現在以下幾個方面:1數據庫完整性約束能夠防止合法用戶使用數據庫時向數據庫中添加不合語義的數據。2利用基于
15、DBMS 的完整性控制機制來實現業務規則,易于定義,容易理解,而且可以降低應用程序的復雜性,提高應用程序的運行效率。同時,基于 DBMS 的完整性控制機制是集中管理的, 因此比應用程序更容易實現數據庫的完整性。3合理的數據庫完整性設計, 能夠同時兼顧數據庫的完整性和系統的效能。比如裝載大量數據時, 只要在裝載之前臨時使基于 DBMS 的數據庫完整性約束失效,此后再使其生效,就能保證既不影響數據裝載的效率又能保證數據庫的完整性。4在應用軟件的功能測試中, 完善的數據庫完整性有助于盡早發現應用軟件的錯誤。在實施數據庫完整性設計的時候,有一些基本的原則需要把握:1) 根據數據庫完整性約束的類型確定其
16、實現的系統層次和方式,并提前考慮對系統性能的影響。一般情況下,靜態約束應盡量包含在數據庫模式中,而動態約束由應用程序實現。2) 實體完整性約束、參照完整性約束是關系數據庫最重要的完整性約束,在不影響系統關鍵性能的前提下需盡量應用。用一定的時間和空間來換取系統的易用性是值得的。5.2、安全性設計數據庫的安全性是指保護數據庫以防止不合法的使用所造成的數據泄露、更改或破壞。系統安全保護措施是否有效是數據庫系統的主要指標之一。數據庫的安全性和計算機系統的安全性,包括操作系統、網絡系統的安全性是緊密聯系、相互支持的。信息系統盡管功能強大,技術先進,但由于受到自身體系結構,設計思路第13頁以及運行機制等限
17、制,也隱含許多不安全因素。常見因素有:數據的輸入,輸出,存取與備份,源程序以及應用軟件,數據庫,操作系統等漏洞或缺陷,硬件,通信部分的漏洞,企業內部人員的因素,病毒,“黑客”等因素。因此,為使本系統能夠真正安全,可靠,穩定地工作, 必須考慮如下問題:為保證安全,不致使系統遭到意外事故的損害,系統因該能防止火,盜或其他形式的人為破壞。SQLServer 提供多層安全。在最外層,SQLServer 的登錄安全性直接集成到 Widows NT/2000 的安全上,它允許 Windows NT服務器驗證用戶。使用這種Windows 驗證 SQL Server 就可以利用 Windows NT/2000
18、的安全特性,例如安全驗證和密碼加密、審核、密碼過期、最短密碼長度,以及在多次登錄請求無效后鎖定帳號。6、總結通過本次大作業的練習,本次的大作業總共涉及的科目有wb 編程語言應用,數據庫系統設計與分析, 還有 sql server數據庫語言的實際操作應用, 并且對于總體的項目開發計劃也有了基本的概念,在做系統的的過程中從對系統懵懂,模糊,零星的思路,到最后整體設計思路的形成,都是經過反復的經過推敲和研究出來的,其中大量的查閱有關書籍和資料,每一個人都把自己的想法和思路提出來,組員經過討論和分析在決定最后的 ER 圖,畫好之后,可以說這個數據庫已經可以呈現在腦海里了,但是為了更好的優化和設計出所需
19、要的系統,就應該對 ER 圖進行冗余檢查,對 ER 圖進行全面的優化,盡量使它符合 3NF 模式,最后用 oracle 語句實現你的數據庫。通過這次課程設計,我們覺得我們收獲的遠不止于這個系統的設計,而是對于數據庫系統的開發設計步驟與方法的實踐掌握,我們覺得這是對我們系統開發能力最好的訓練和考核,它不僅僅是一次考核方式,還是一次真正的項目開發實踐,為以后的工作打好了一個堅實的基礎, 雖然不至于到精通, 但至少可以做到知道怎么干和從哪干起。這次的課程設計中有很多知識是我們課堂上沒有學習過的,這就要求我們自己第14頁去查閱相關的書籍。正是這樣給了我更多了解編程語言的機會,同時也鍛煉了我的自學能力,
20、為以后的學習奠定了基礎。在這個過程中,我們學會了很多知識,在以后的學習中,我們會更加努力地學會專業知識,并將所學知識投入到社會實踐中去,以便更好地掌握。7、附錄7.1 創建觸發器1、創建訂貨日期大于注冊日期的觸發器create Trigger tri_con 訂購表 after insert,updateasif exists(select * from 訂購表d join 顧客表c on d.顧客 ID=c.顧客 IDWHERE d.訂貨日期 =c.注冊日期 )rollback2、創建顧客 id 的級聯更新的觸發器create trigger tri_don 顧客表after updatea
21、supdate顧客表set 顧客 ID=(SELECT 顧客 ID FROM INSERTED)WHERE 顧客 ID IN (select 顧客 ID from deleted )3、創建訂購數量大于或等于庫存量的觸發器create Trigger tri_won 訂購表 after insert,updateasif exists(select * from 訂購表d join 商品信息表c on d.商品 ID=c.商品 ID第15頁WHERE d.訂購數量 =d.交貨日期 )rollback7.2 創建索引1、創建索引create index ename_indon 訂購表 (訂貨日期
22、 )7.3 創建視圖1、創建視圖create view v_is_s1(商品名稱 ,庫存量 ,售價 ,生產日期 ,保質期 )asselect c.商品名稱 ,庫存量 ,售價 ,生產日期 ,保質期from 訂購表c join 商品信息表don c.商品 ID=d.商品 ID7.4 創建存儲過程1、創建存儲過程create procedure 商品信息表 _商品 ID商品 ID char(15)asselect c.商品名稱 ,進價 ,售價 ,訂購數量from 商品信息表c join 訂購表d onc.商品 ID=d. 商品 IDwhere c.商品 ID= 商品 IDexec 商品信息表 _商品
23、 ID 22、創建存儲過程create procedure 商品信息表 _訂貨日期訂貨日期varchar(20)as第17頁select c.商品 ID, 進價 ,售價 ,訂購數量from 商品信息表c join 訂購表d onc.商品 ID=d. 商品 IDwhere 訂貨日期 =訂貨日期exec 商品信息表 _訂貨日期201412097.5、完整性約束1、創建顧客表的電話約束alter table 顧客表add constraint ck_ocheck(電話 like 0-90-90-9-0-90-90-90-90-90-90-90-9)2、創建地址默認值約束alter table 顧客表add const
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中國幼兒托管行業市場調研分析及投資戰略咨詢報告
- 中國ERP軟件行業市場供需現狀及未來發展趨勢報告
- 2025年中國除雪設備行業市場全景調研及投資規劃建議報告
- 2025年中國儀表行業市場前景預測及投資戰略研究報告
- 2025年中國現代農業行業發展前景預測及投資戰略研究報告
- 電機培訓課件圖片
- 轉正實習報告
- 2025年中國大米蛋白行業發展前景預測及投資戰略研究報告
- 2025年中國微型繼電器行業競爭格局分析及投資規劃研究報告
- 廠房租賃合同
- 2024秋廣東開放大學《數學大觀(本)》測驗1-5答案
- 蘇州大學《普通物理學三》2021-2022學年第一學期期末試卷
- 生態修復合同范例
- 工業大數據采集處理與應用
- 程序設計基礎-C(四川師范大學)知到智慧樹章節答案
- 公共體育(四)學習通超星期末考試答案章節答案2024年
- 正畸病歷書模板
- 2023-2024學年全國初中七年級下語文人教版期末考試試卷(含答案解析)
- 超星爾雅學習通《微生物與人類健康(復旦大學)》2024章節測試答案
- 有趣的圖形化編程
- 《RT-Thread實時操作系統內核、驅動和應用開發技術》全套教學課件
評論
0/150
提交評論