http://www.winu.cn/1/34248.html
類似的
一.可行性研究:
隨著政府機關與廣大企事業單位內部網路的廣泛建立,在通用信息平台上構築高效實用的協同工作和自動化辦公應用系統,滿足信息高度共享和即時發布的需求,有效實現內部知識管理,已成為眾多用戶的共同需求。
圖書管理系統,為政府機關與廣大企事業單位自動化辦公提供了一個較好的解決方案。在開發過程中,按照軟體工程的步驟,從設計到開發採用了面向對象的思想和技術,採用了SQL SERVER 2000網路資料庫,使得本系統可以方便的和其他子系統進行數據交換。同時,注意從軟體的圖形應用界面上優化軟體質量,使得本系統具有很強的可操作性。
二.需求分析:
1.任務概述:
1.1 目標:
對圖書信息進行圖書入庫、借閱登記、借閱查詢、過期提示、辦理借書卡這些日常業務的需要。高效性通過系統的實用,能夠改變舊的圖書管理模式,使對圖書的管理、借閱、查詢更加方便有效。
1.2 運行環境:
Windows 98/2000/XP/2003操作系統下,安裝並配置軟體Microsoft SQL Server 2000資料庫管理系統。
2.數據需求:
2.1 數據流條目:
許可權=許可權+姓名 登錄用戶=帳號+姓名+密碼+許可權
用戶=用戶帳號+姓名+性別+組號+證件號碼 圖書類別=類別+類名
圖書=圖書編號+類別+書名+作者+出版日期+出版社+定價+總數量+剩下數量+備注
借閱=用戶帳號+圖書編號+借書日期+到期日期+數量+還書日期
借閱信息=用戶帳號+圖書編號+借書日期+到期日期+數量+還書日期
2.2 數據字典(DD):
2.3 資料庫描述:
使用SQL SERVER2000作為後台資料庫,就可以行使基於網路連接的用戶認證。從而給不同的子系統分配不同的資料庫使用角色,讓他們彼此之間使用的資料庫隔離開來,以達到較高的安全性。
2.4 數據採集:
通過Internet從網站上收集一些圖書的相關信息,錄入資料庫,從而建立資料庫,並在編碼調試階段測試各個功能模塊的實現。
3.功能需求:
3.1 功能劃分:
圖書管理系統主要實現以下七方面的功能:
a.查詢 b.圖書借還 c.圖書入庫 d.圖書維護
e.圖書超期提示 f.環境管理 g.備份還原
3.2 功能描述:
圖書管理包括查詢、借還、入庫、維護、超期提示、環境管理和備份還原七方面功能。
圖書入庫,主要實現入庫登記。
圖書借閱,進行借書登記(此操作由管理員完成);當用戶要查詢自己的借閱情況時,可進行借閱查詢。
圖書超期提示,當借閱者在已到借書期限時未歸還圖書,提示其盡快辦理歸還手續。
3.3 數據流圖(DFD):
新書入庫DFD:
D1 庫存清單
D1 庫存清單
圖書借閱的DFD:
過期提示的DFD:
借閱查詢的DFD:
D1 借閱查詢清單
還書處理的DFD:
D1 庫存清單
4.安全性需求:
考慮到不同用戶的許可權不同,第一次進入該系統時應該向管理員申請注冊一個用戶名和密碼,並完整的填寫相關信息,同時存入資料庫表中。這樣管理員就可賦予不同用戶不同的許可權。每位用戶根據自己的身份不同,進入不同的用戶界面。管理員有權力行使所有的管理功能,普通用戶只能進行一般的查詢。
5.一致性需求:
在圖書管理系統相關的表之間,有較強的關聯性,為了實現一致性的需求,我們在各個表之間建立起了一致性約束。
6.完整性需求:
根據圖書管理系統的要求,為保持數據的完整性,採用了資料庫的事務機制,防止出現操作故障。
三. 概要設計說明書:
1.總體設計:
1.1 系統結構示意圖:
圖書管理系統結構示意圖
1.2總體結構和模塊外部設計:
2.介面設計:
2.1 外部介面:
通過一定的計算機硬體,建立伺服器系統,管理員通過管理伺服器系統,與用戶進行交互,從而達到資源共享的目的,實現圖書管理系統。
2.2 內部介面:
程序內部需要共同的數據定義和描述,此系統是智能辦公化管理系統的一個子系統,必須和這個系統的其他子系統統一數據定義等,才能使該系統性能達到最好,並且要盡量消除和其他子系統模塊之間存在的數據冗餘,才能使整個智能辦公系統做到高效,方便。
3.E-R圖
E-R圖清楚地描述了系統中各個實體之間的聯系,以及各個實體所具有的屬性,可以使讀者很清楚地了解整個系統的總體處理。在建立E-R圖的過程中,主要經歷以下幾個步驟:1.選擇局部應用;2.逐一設計分E-R圖;3.合並分E-R圖,生成初步E-R圖;4.消除不必要的冗餘,設計基本的E-R圖。
4.運行設計:
4.1 運行模塊的組合:
運行模塊分成基本的三個模塊,即是:輸入模塊,輸出模塊,處理模塊等。這使得整個系統的維護容易,簡單;系統的結構層次簡單,易懂。
4.2 運行控制:
本系統採用的控制方式主要有三種:順序,選擇,循環。
5.安全保密設計:
考慮到不同用戶的許可權不同,第一次進入該系統時應該向管理員注冊一個用戶名和密碼,並完整的填寫相關信息,同時存入資料庫表中。這樣管理員就可賦予不同用戶不同的許可權。當用戶登錄進操作界面之前,我們設置了用戶名和密碼,當用戶名和密碼相匹配時才能進入該用戶所允許做的許可權操作界面,否則就只能看到登錄界面管理員有權力行使所有的管理功能,普通用戶只能進行一般的查詢。
四.詳細設計:
1.資料庫表
許可權:(許可權,姓名)
登錄用戶:(帳號,姓名,密碼,許可權)
用戶:(用戶帳號,姓名,性別,組號,證件號碼)
圖書類別:(類別,類名)
圖書:(圖書編號,類別,書名,作者,出版日期,出版社,定價,總數量,剩下數量,備注)
借閱:(用戶帳號,圖書編號,借書日期,到期日期,數量,還書日期)
借閱信息:(用戶帳號,圖書編號,借書日期,到期日期,數量,還書日期)
2.計算機的軟體配置
Windows 98/Windows xp/Windows 2000/Windows 2003;
五. 編碼與實現:
六. 測試
『貳』 vb 網路資料庫課程設計 庫房出入庫管理系統 急需!
書上都有參考的,上課用點心,作業的話還是自已動手學得快一點。
簡潔,易用,實用才能符合用戶需求。
可以參考一下「英軟科技」的「ZS8倉庫管理軟體」。
『叄』 資料庫課程設計!!!急!
一、通過ODBC DSN建立連接 運用ODBC數據源,首先必須在控制面板的ODBC中設置數據源,然後再編寫腳本和資料庫源建立連接。 1、創建 ODBC DSN 通過在 Windows 的"開始"菜單打開"控制面板",您可以創建基於 DSN 的文件。雙擊"ODBC"圖標,然後選擇"系統 DSN"屬性頁,單擊"添加",選擇資料庫驅動程序,然後單擊"下一步"。按照後面的指示配置適用於您的資料庫軟體的 DSN。常用的資料庫軟體有Microsoft Access和SQL Server等,這里以SQL Server 資料庫為例。 配置 SQL Server 資料庫系統 DSN:注意如果資料庫駐留在遠程伺服器上,請與伺服器管理員聯系,獲取附加的配置信息;下面的過程使用 SQL Server 的 ODBC 默認的設置,它可能不適用於您的硬體配置。在"創建新數據源"對話框中,從列表框中選擇"SQL Server",然後單擊"下一步"。鍵入 DSN 文件的名稱,然後單擊"下一步"。單擊"完成"創建數據源。鍵入運行 SQL 服務程序的伺服器的名稱、登錄 ID 和密碼。在"創建 SQL Server 的新數據源"對話框中,在"伺服器"列表框中鍵入包含 SQL Server 資料庫的伺服器的名稱,然後單擊"下一步"。選擇驗證登錄 ID 的方式。如果要選擇 SQL 伺服器驗證,請輸入一個登錄 ID 和密碼,然後單擊"下一步"。在"創建 SQL Server 的新數據源"對話框中,設置默認資料庫、存儲過程設置的驅動程序和 ANSI 標識,然後單擊"下一步"。(要獲取詳細信息,請單擊"幫助"。)在對話框(同樣名為"創建 SQL Server 的新數據源")中,選擇一種字元轉換方法,然後單擊"下一步"。(詳細信息,請單擊"幫助"。)在下一個對話框(同樣名為"創建 SQL Server 的新數據源")中,選擇登錄設置。 注意典型情況下,您只能使用日誌來調試資料庫訪問問題。 在"ODBC Microsoft SQL Server 安裝程序"對話框中,單擊"測試數據源"。如果 DSN 正確創建,"測試結果"對話框將指出測試成功完成。 首先,流程是一切的根本。所謂軟體工程,當初上課的時候根本無法體會其意義。現在經過一個個爛系統的熏陶之後,終於漸漸明白,流程不是用來說說而已的,一個項目真的不是那麼容易就可以掌控的,進度控制是項目順利進行的基礎。沒有大局觀,面對問題和變更就會不知所措了。 其次,架構是重要的,比你想像的還要重要!往往我們自以為明白這一點,但實際做起來卻總是不知不覺地偏離。上次做的宿舍管理系統,自以為做得很好,現在知道了,當時寫頁面那麼痛苦就是因為我們用的是「JSP + JavaBean」,連一個servlet都沒寫,把"C-V"部分全都推在頁面上了。。。這次用了Struts,雖然也沒用用到深層的東西,但至少明白了何為MVC,並切身感受到了Struts帶來的方便。 再次,我們原來只算是高級勞工罷了。說得很好聽,搞技術的,其實弄懂弄好技術之後,還不一樣是一堆一堆的體力勞動。所以有時候我在連續熬夜趕工調試代碼的時候會有種厭倦感,有時甚至真的做到想吐!因為做來做去都是那些東西,就像A片看多了也會乏味一樣吧。 最後,實踐比一切空談和理論更能學到東西。注意,這里不是說理論的基礎的東西就沒用。看『Java How To Program』那麼久,感覺真的很上癮。是的,沒錯,上癮!弄清了很多概念,解答了很多一直讓人困惑的問題。但是!!一個項目做下來,你就會覺得跟項目過程中學到的東西相比,平時那些不過都是理論都是皮毛,一旦不用很快就忘記,始終要在實踐中才會發現問題才會努力去解決才能成長。不過沒看完的『Java How To Program』還是會繼續看的,始終認為基礎便是這樣的東西,枯燥(JHTP至少比『Thinking In Java』好多了),看似簡單,卻是你走上高處的基礎。
『肆』 資料庫課程設計實例
資料庫課程設計
題目:小型超市管理系統
1、項目計劃
1.1系統開發目的
(1)大大提高超市的運作效率;
(2)通過全面的信息採集和處理,輔助提高超市的決策水平;
(3)使用本系統,可以迅速提升超市的管理水平,為降低經營成本, 提高效益,增強超市擴張力, 提供有效的技術保障。
1.2背景說明
21世紀,超市的競爭也進入到了一個全新的領域,競爭已不再是規模的競爭,而是技術的競爭、管理的競爭、人才的競爭。技術的提升和管理的升級是超市業的競爭核心。零售領域目前呈多元發展趨勢,多種業態:超市、倉儲店、便利店、特許加盟店、專賣店、貨倉等相互並存。如何在激烈的競爭中擴大銷售額、降低經營成本、擴大經營規模,成為超市營業者努力追求的目標。
1.3項目確立
針對超市的特點,為了幫助超市解決現在面臨的問題,提高小型超市的競爭力,我們將開發以下系統:前台POS銷售系統、後台管理系統,其中這兩個子系統又包含其它一些子功能。
1.4應用范圍
本系統適應於各種小型的超市。
1.5 定義
(1)商品條形碼:每種商品具有唯一的條形碼,對於某些價格一樣的商品,可以使用自定義條形碼。
(2)交易清單:包括交易的流水賬號、每類商品的商品名、數量、該類商品的總金額、交易的時間、負責本次收銀的員工號。
(3)商品積壓:在一定時期內,遠無法完成銷售計劃的商品會造成積壓。
(4)促銷:在一定時期內,某些商品會按低於原價的促銷價格銷售。
庫存告警提示:當商品的庫存數量低於庫存報警數量時發出提示。
(5)盤點:計算出庫存、銷售額、盈利等經營指標。
1.6 參考資料
《資料庫原理及設計》 陶宏才編 清華大學出版社
《SQL Server 2000 實用教程》范立南編 清華大學出版社
《SQL Server 2000 編程員指南》李香敏編 北京希望電子出版社
《輕松搞定 SQL Server 2000 程序設計》Rebecca M.Riordan編
《軟體工程規范》Watts S.Humphrey編 清華大學出版社
《軟體工程理論與實踐》 Shari Lawrence Pfleeger編 清華大學出版社
《軟體需求分析》 Swapna Kishore編 機械工業出版社
《軟體工程思想》 林銳編
2、邏輯分析與詳細分析
2.1系統功能
(1)、零售前台(POS)管理系統,本系統必須具有以下功能:
商品錄入:根據超巿業務特點制定相關功能,可以通過輸入唯一編號、掃描條形碼、商品名稱等來實現精確或模糊的商品掃描錄入。該掃描錄入方法可以充分保證各種電腦操作水平層次的人員均能准確快速地進行商品掃描錄入。
收銀業務:通過掃描條形碼或者直接輸入商品名稱(對於同類多件商品採用一次錄入加數量的方式)自動計算本次交易的總金額。在顧客付款後,自動計算找零,同時列印交易清單(包括交易的流水賬號、每類商品的商品名、數量、該類商品的總金額、交易的時間、負責本次收銀的員工號)。如果顧客是本店會員並持有本人會員卡,則在交易前先掃描會員卡,並對所購物品全部實行95折優惠,並將所購物品的總金額累計到該會員的總消費金額中。 會員卡的有效期限為一年,滿一年未續卡者,該會員卡將被注銷。
安全性:OS登陸、退出、換班與操作鎖定等許可權驗證保護;斷電自動保護最大限度防止意外及惡意非法操作。
獨立作業:有的斷網收銀即在網路伺服器斷開或網路不通的情況下,收銀機仍能正常作業
(2)、後台管理系統,本系統必須具備以下功能
進貨管理: 根據銷售情況及庫存情況,自動制定進貨計劃(亦可手工制定修改),可以避免盲目進貨造成商品積壓。 按計劃單有選擇性地進行自動入庫登記。 綜合查詢列印計劃進貨與入庫記錄及金額。
銷售管理: 商品正常銷售、促銷與限量、限期及禁止銷售控制。 綜合查詢各種銷售明細記錄、各地收銀員收銀記錄以及交結賬情況等。 按多種方式統計生成銷售排行榜,靈活察看和列印商品銷售日、月、年報表。
庫存管理: 綜合查詢庫存明細記錄。 庫存狀態自動告警提示。如庫存過剩、少貨、缺貨等。軟體為您預警,避免庫存商品積壓損失和缺貨。 庫存自動盤點計算。
人員管理: 員工、會員、供貨商、廠商等基本信息登記管理。 員工操作許可權管理。 客戶銷售許可權管理。
(3)系統結構
系統總體結構
模塊子系統結構
功能描述:商品錄入子系統要求能快速錄入商品,因此必須支持條形碼掃描。
功能描述:收銀業務子系統能計算交易總額,列印交易清單,並根據會員卡打折。
功能描述:進貨管理子系統可以根據庫存自動指定進貨計劃,進貨時自動等級,以及提供查詢和列印計劃進貨與入庫記錄的功能。
功能描述:銷售管理子系統可以控制某商品是否允許銷售,查詢每種商品的銷售情況並產生年、月、日報表,同時可以生成銷售排行榜。
功能描述:庫存管理子系統提供查詢庫存明細記錄的基本功能,並根據庫存的狀態報警,以及自動盤點計算。
功能描述:人員管理子系統提供基本信息登記管理,員工操作許可權管理,客戶銷售許可權管理的功能。
2.2、流程圖
前台管理系統
頂層DFD圖
第0層DFD圖
第1層DFD圖
2.3、戶類型與職能
(1)、員工(營業員):
通過商品條形碼掃描輸入商品到購買清單
操作軟體計算交易總金額
操作軟體輸出交易清單
對會員進行會員卡掃描以便打折
(2)、:超市經理
操作軟體錄入商品,供貨商,廠商
操作軟體制定進貨計劃
查詢列印計劃進貨與入庫記錄
操作軟體控制商品銷售與否
查詢列印銷售情況
操作軟體生成銷售排行榜
查詢庫存明細記錄
根據軟體發出的庫存告警進行入貨
操作軟體進行盤點計算
(3)、總經理:
基本信息登記管理
員工操作許可權管理
客戶銷售許可權管理
2.4、統開發步驟
確定參與者和相關的用況
為每個用況設計過程
建立順序圖,確定每個腳本中對象的協作
創建類,確定腳本中的對象
設計, 編碼, 測試, 集成類
為過程編寫系統測試案例
運行測試案例,檢驗系統
2.5、系統環境需求
系統模式
本系統採用C/S模式作為開發模式
硬體環境
伺服器端:
高性能的計算機一台,
普通的雙絞線作為連接。
客戶端: 普通的計算機或者工作站,
普通的雙絞線作為連接。
軟體環境
伺服器端:安裝SQL Server 2000的伺服器版本,
安裝windows 2000伺服器版本,
配置了諾頓等必須的防毒軟體。
客戶端: 安裝SQL Server2000的伺服器版本,
安裝了VB等可視化開發工具軟體,
安裝windows2000伺服器版本。
2.6、系統安全問題
信息系統盡管功能強大,技術先進,但由於受到自身體系結構,設計思路以及運行機制等限制,也隱含許多不安全因素。常見因素有:數據的輸入,輸出,存取與備份,源程序以及應用軟體,資料庫,操作系統等漏洞或缺陷,硬體,通信部分的漏洞,企業內部人員的因素,病毒,「黑客」等因素。因此,為使本系統能夠真正安全,可靠,穩定地工作,必須考慮如下問題:為保證安全,不致使系統遭到意外事故的損害,系統因該能防止火,盜或其他形式的人為破壞。
系統要能重建
系統應該是可審查的
系統應能進行有效控制,抗干擾能力強
系統使用者的使用許可權是可識別的
3、基於UML的建模
3.1語義規則
用例模型(use cases view)(用例視圖)的基本組成部件是用例(use case)、角色(actor)和系統(system)。用例用於描述系統的功能,也就是從外部用戶的角度觀察,系統應支持哪些功能,幫助分析人員理解系統的行為,它是對系統功能的宏觀描述,一個完整的系統中通常包含若干個用例,每個用例具體說明應完成的功能,代表系統的所有基本功能(集)。角色是與系統進行交互的外部實體,它可以是系統用戶,也可以是其它系統或硬體設備,總之,凡是需要與系統交互的任何東西都可以稱作角色。系統的邊界線以內的區域(即用例的活動區域)則抽象表示系統能夠實現的所有基本功能。在一個基本功能(集)已經實現的系統中,系統運轉的大致過程是:外部角色先初始化用例,然後用例執行其所代表的功能,執行完後用例便給角色返回一些值,這個值可以是角色需要的來自系統中的任何東西。
UML:是一種標準的圖形化建模語言,它是面向對象分析與設計的一種標准表示;它不是一種可視化的程序設計語言而是一種可視化的建模語言;不是工具或知識庫的規格說明而是一種建模語言規格說明是一種表示的標准;不是過程也不是方法但允許任何一種過程和方法使用它。
用例(use case):
參與者(actor):
3.2、UML模型
3.21、系統UML模型
3.22、子系統UML模型
(1)零售前台(POS)管理系統用例視圖
(2)後台管理系統用例視圖
3.3、系統實現圖
4、超市銷售系統概念設計文檔
(1)、系統ER圖
(2)、系統ER圖說明
1) 商店中的所有用戶(員工)可以銷售多種商品,每種商品可由不同用戶(員工)銷售;
2) 每個顧客可以購買多種商品,不同商品可由不同顧客購買;
3) 每個供貨商可以供應多種不同商品,每種商品可由多個供應商供應。
(3)、視圖設計
1) 交易視圖(v_Dealing)——用於查詢交易情況的視圖;
2) 計劃進貨視圖(v_PlanStock)——用於查詢進貨計劃的視圖;
3) 銷售視圖(v_Sale)——用於查詢銷售明細記錄的視圖;
4) 入庫視圖(v_Stock)——用於查詢入庫情況的視圖。
5、邏輯設計文檔
(1)、系統關系模型
a) 商品信息表(商品編號,商品名稱,價格,條形碼,促銷價格,促銷起日期,促銷止日期,允許打折,庫存數量,庫存報警數量,計劃進貨數,允許銷售,廠商編號,供貨商編號)
b) 用戶表(用戶編號,用戶名稱,用戶密碼,用戶類型)
c) 會員表(會員編號,會員卡號,累積消費金額,注冊日期)
d) 銷售表(銷售編號,商品編號,銷售數量,銷售金額,銷售日期)
e) 交易表(交易編號,用戶名稱,交易金額,會員卡號,交易日期)
f) 進貨入庫表(入庫編號,入庫商品編號,入庫數量,單額,總額,入庫日期,計劃進貨日期,入庫狀態)
g) 供貨商表(供貨商編號,供貨商名稱,供貨商地址,供貨商電話)
h) 廠商表(廠商編號,廠商名稱,廠商地址,廠商電話)
(2)、系統資料庫表結構
資料庫表索引
表名 中文名
MerchInfo 商品信息表
User 用戶表
Menber 會員表
Sale 銷售表
Dealing 交易表
Stock 進貨入庫表
Provide 供貨商表
Factory 廠商表
商品信息表(MerchInfo)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
MerchID int 4 P Not null 商品編號
MerchName Varchar 50 Not null 商品名稱
MerchPrice Money 4 Not null 價格
MerchNum Int 4 Not null 庫存數量
CautionNum Int 4 Not null 庫存報警數量
PlanNum Int 4 null 計劃進貨數
BarCode Varchar 50 Not null 條形碼
SalesProPrice Money 4 促銷價格
SalesProDateS Datetime 8 促銷起日期
SalesProDateE Datetime 8 促銷止日期
AllowAbate Int 4 Not null 允許打折
AllowSale Int 4 Not null 允許銷售
FactoryID Varchar 10 F Not null 廠商編號
ProvideID Varchar 10 F Not null 供貨商編號
用戶表(User)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
UserID varchar 10 P Not null 用戶編號
UserName Varchar 25 Not null 用戶名稱
UserPW Varchar 50 Not null 用戶密碼
UserStyle Int 4 Not null 用戶類型
會員表(Menber)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
MemberID Varchar 10 P Not null 會員編號
MemberCard Varchar 20 Not null 會員卡號
TotalCost Money 4 Not null 累積消費金額
RegDate Datetime 8 Not null 注冊日期
銷售表(Sale)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
SaleID Varchar 10 P Not null 銷售編號
MerChID Varchar 10 F Not null 商品編號
SaleDate Datetime 8 Not null 銷售日期
SaleNum Int 4 Not null 銷售數量
SalePrice Money 4 Not null 銷售單額
交易表(Dealing)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
DealingID Varchar 10 P Not null 交易編號
DealingPrice Money 4 Not null 交易金額
DealingDate Money 4 Not null 交易日期
MemberID Varchar 10 會員卡號
UserName Varchar 10 F Not null 用戶名稱
入庫紀錄表(Stock)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
StockID Varchar 10 P Not null 入庫編號
MerchID Varchar 10 F Not null 入庫商品編號
MerchNum Int 4 Not null 入庫數量
MerchPrice Money 4 Not null 單額
TotalPrice Money 4 Not null 總額
StockDate Datetime 8 Datetime 入庫日期
PlanDate Datetime 8 Datetime 計劃進貨日期
StockState Int 4 Not null 入庫狀態
供貨商表(Provide)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
ProvideID varchar 10 P Not null 供貨商編號
ProvideName Varchar 50 Not null 供貨商名稱
ProvideAddress Varchar 250 供貨商地址
ProvidePhone Varchar 25 供貨商電話
廠商表(Provide)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
FactoryID varchar 10 P Not null 廠商編號
FactoryName Varchar 50 Not null 廠商名稱
FactoryAddress Varchar 250 廠商地址
FactoryPhone Varchar 25 廠商電話
6、物理設計文檔
/*----------創建資料庫----------*/
create database SuperMarketdb
on primary
(
name=SuperMarketdb,
filename='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SuperMarketdb.mdf',
size=100MB,
maxsize=200MB,
filegrowth=20MB
)
log on
(
name=SuperMarketlog,
filename='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SuperMarketdb.ldf',
size=60MB,
maxsize=200MB,
filegrowth=20MB
)
go
/*----------創建基本表----------*/
use [SuperMarketdb]
go
/*創建交易表*/
CREATE TABLE Dealing (
DealingID int identity(1,1) Primary key ,
DealingDate datetime NOT NULL ,
DealingPrice money NOT NULL ,
UserName varchar(25) NULL ,
MemberCard varchar(20) NULL
)
GO
/*創建廠商表*/
CREATE TABLE Factory (
FactoryID varchar(10) Primary key ,
FactoryName varchar(50) NOT NULL ,
FactoryAddress varchar(250) NULL ,
FactoryPhone varchar(50) NULL
)
GO
/*創建會員表*/
CREATE TABLE Member (
MemberID varchar(10) Primary key ,
MemberCard varchar(20) NOT NULL ,
TotalCost money NOT NULL ,
RegDate datetime NOT NULL
)
GO
/*創建商品信息表*/
CREATE TABLE MerchInfo (
MerchID int identity(1,1) Primary key ,
MerchName varchar(50) Unique NOT NULL ,
MerchPrice money NOT NULL ,
MerchNum int NOT NULL ,
CautionNum int NOT NULL ,
PlanNum int NOT NULL ,
BarCode varchar(20) Unique NOT NULL ,
SalesProPrice money NULL ,
SalesProDateS datetime NULL ,
SalesProDateE datetime NULL ,
AllowAbate int NOT NULL ,
AllowSale int NOT NULL ,
FactoryID int NOT NULL ,
ProvideID int NOT NULL
)
GO
/*創建供應商表*/
CREATE TABLE Provide (
ProvideID varchar(10) Primary key ,
ProvideName varchar(50) NOT NULL ,
ProvideAddress varchar(250) NULL ,
ProvidePhone varchar(25) NULL
)
GO
/*創建銷售表*/
CREATE TABLE Sale (
SaleID int identity(1,1) Primary key ,
MerChID int NOT NULL ,
SaleDate datetime NOT NULL ,
SaleNum int NOT NULL,
SalePrice money NOT NULL
)
GO
/*創建入庫表*/
CREATE TABLE Stock (
StockID int identity(1,1) Primary key ,
MerchID int NOT NULL ,
MerchNum int NOT NULL ,
MerchPrice money NULL ,
TotalPrice money NULL ,
PlanDate datetime NULL ,
StockDate datetime NULL,
StockState int NOT NULL
)
GO
/*創建用戶表*/
CREATE TABLE User (
UserID varchar(10) Primary key ,
UserName varchar(25) NOT NULL ,
UserPW varchar(50) NOT NULL ,
UserStyle int NOT NULL ,
)
GO
/*----------創建表間約束----------*/
/*商品信息表中廠商編號、供應商編號分別與廠商表、供應商表之間的外鍵約束*/
ALTER TABLE MerchInfo ADD
CONSTRAINT [FK_MerchInfo_Factory] FOREIGN KEY
(
[FactoryID]
) REFERENCES Factory (
[FactoryID]
),
CONSTRAINT [FK_MerchInfo_Provide] FOREIGN KEY
(
[ProvideID]
) REFERENCES Provide (
[ProvideID]
)
GO
/*銷售表中商品編號與商品信息表之間的外鍵約束*/
ALTER TABLE Sale ADD
CONSTRAINT [FK_Sale_MerchInfo] FOREIGN KEY
(
[MerChID]
) REFERENCES MerchInfo (
[MerchID]
) ON DELETE CASCADE
GO
/*入庫表中商品編號與商品信息表之間的外鍵約束*/
ALTER TABLE Stock ADD
CONSTRAINT [FK_Stock_MerchInfo] FOREIGN KEY
(
[MerchID]
) REFERENCES MerchInfo (
[MerchID]
) ON DELETE CASCADE
GO
/*----------創建索引----------*/
/*在交易表上建立一個以交易編號、交易日期為索引項的非聚集索引*/
CREATE nonclustered INDEX IX_Dealing ON Dealing(DealingID, DealingDate)
GO
/*在商品信息表上建立一個以商品編號為索引項的非聚集索引*/
CREATE nonclustered INDEX IX_MerchInfo ON MerchInfo(MerchID)
GO
/*在銷售表上建立一個以銷售編號、銷售日期為索引項的非聚集索引*/
CREATE nonclustered INDEX IX_Sale ON Sale(SaleID, SaleDate)
GO
/*在入庫表上建立一個以入庫編號、入庫日期、商品編號為索引項的非聚集索引*/
CREATE nonclustered INDEX IX_Stock ON Stock(StockID, StockDate, MerchID)
GO
/*----------創建視圖----------*/
/*創建用於查詢交易情況的視圖*/
CREATE VIEW v_Dealing
AS
SELECT DealingDate as 交易日期,
UserName as 員工名稱,
MemberCard as 會員卡號,
DealingPrice as 交易金額
FROM Dealing
GO
/*創建用於查詢進貨計劃的視圖*/
CREATE VIEW v_PlanStock
AS
SELECT Stock.StockID as SID,
MerchInfo.MerchName as 商品名稱,
MerchInfo.BarCode as 條形碼,
Factory.FactoryName as 廠商,
Provide.ProvideName as 供貨商,
Stock.MerchNum as 計劃進貨數量,
Stock.PlanDate as 計劃進貨日期
FROM Stock,MerchInfo,Provide,Factory
Where Stock.MerchID = MerchInfo.MerchID
and Provide.ProvideID=MerchInfo.ProvideID
and Factory.FactoryID=MerchInfo.FactoryID
and Stock.StockState=0
GO
/*創建用於查詢銷售明細記錄的視圖*/
CREATE VIEW v_Sale
AS
SELECT MerchInfo.MerchName as 商品名稱,
MerchInfo.BarCode as 條形碼,
MerchInfo.MerchPrice as 商品價格,
Sale.SalePrice as 銷售價格,
Sale.SaleNum as 銷售數量,
Sale.SaleDate as 銷售日期
FROM Sale INNER JOIN
MerchInfo ON Sale.MerChID = MerchInfo.MerchID
GO
/*創建用於查詢入庫情況的視圖*/
CREATE VIEW v_Stock
AS
SELECT MerchInfo.MerchName as 商品名稱,
MerchInfo.BarCode as 條形碼,
Factory.FactoryName as 廠商,
Provide.ProvideName as 供貨商,
Stock.MerchPrice as 入庫價格,
Stock.MerchNum as 入庫數量,
Stock.TotalPrice as 入庫總額,
Stock.StockDate as 入庫日期
FROM Stock,MerchInfo,Provide,Factory
Where Stock.MerchID = MerchInfo.MerchID
and Provide.ProvideID=MerchInfo.ProvideID
and Factory.FactoryID=MerchInfo.FactoryID
and Stock.StockState=1
GO
7、小結
和傳統管理模式相比較,使用本系統,毫無疑問會大大提高超市的運作效率,輔助提高超市的決策水平,管理水平,為降低經營成本, 提高效益,減少差錯,節省人力,減少顧客購物時間,增加客流量,提高顧客滿意度,增強超市擴張能力, 提供有效的技術保障。
由於開發者能力有限,加上時間倉促,本系統難免會出現一些不足之處,例如:
本系統只適合小型超市使用,不能適合中大型超市使用;
超市管理系統涉及范圍寬,要解決的問題多,功能復雜,實現困難,但由於限於時間,本系統只能做出其中的一部分功能;
對於以上出現的問題,我們深表歉意,如發現還有其它問題,希望老師批評指正。
請採納。
『伍』 資料庫課程設計(SQL Server 2000)
網路即時通信系統是為用戶開發研製的,用戶是系統的最終使用者和評價者,所以在網路通信系統的開發設計的過程中,我們樹立了從用戶的尋求出發,面向用戶,一切為了用戶的觀念,在分析與設計系統的前期,為了保證系統的功能的完善多次尋求周圍同學和老師的意見,了解他們的要求,依照功能完善,界面美觀,操作簡單的原則進行設計 。
嚴格按階段進行
系統的開發設計是一項較大的工程,所以應該將整個系統的開發設計過程劃分為若干階段,相應的階段又要分為若干個不同的步驟,每個階段和步驟都要有明確的工作任務和目標。這種有序的組織安排,條例清楚、層次分明,便於計劃的制定和控制,並且為後續工作的進行奠定了堅實的基礎,提高了工作效率和質量。
採用系統的觀點處理
在系統分析階段,在對原系統進行全面調查和分析的基礎上,構造系統的最佳邏輯模型,使用戶對將來完整系統的輪廓有個初步的了解和認識,以便及時和用戶進行交流和探討,不斷提高系統的完善性。在此基礎上進行系統的物理實現和設計,切實完成邏輯模型的具體功能。邏輯設計和物理實現二者是相輔相成、密不可分的,這樣使系統的設計更加穩妥合理。
整個系統的設計主要採用快速原形法
快速原形法是信息系統設計的一個重要方法。它是根據用戶提出的需求,由用戶和開發者共同確定系統的基本要求和主要功能,並在一個較短的時間內建立一個實驗性的、簡單的信息系統模型,通過用戶不斷提出的意見和建議,對模型進行不斷的修改和完善,直到用戶比較滿意為止,以便形成一個相對穩定、較為理想的管理信息系統。該方法的主要優點。
1.脈絡清楚,所有問題都圍繞一個模型展開,使彼此之間聯系緊密。
2.有助於發現用戶需求,通過對原形和用戶接觸,能夠啟發開發人員去挖掘問題,從而不斷的修正、完善,最終得到一個理想的系統。
3.系統開發效率高,此方法的開發周期短、使用靈活、容易修改,這對於管理體制不夠穩定的系統更加適合。
4.系統的可擴展性好,由於此方法是在原型應用中不斷發展完善和修改的,所以有較強的擴展性。
在進行代碼設計時,遵循了以下原則。
唯一性:在本系統中,每一個代碼都和系統中的每一個對象唯一確定。
標准性:主要體現在對程序文件名命名和對數據文件命名的標准化上,遵循簡單扼要,方便適用的原則。一目瞭然,無重復現象。為了系統維護人員便於進行系統維護,使用了統一的標准。
合理性:系統中代碼設計與編碼對象的分類相適應,以使代碼對編碼對象的分類據有標志作用。
簡單性:在設計過程中採用Code-Behind代碼分離,使資料庫操作代碼和前端調用代碼分離,頁面修改容易。
適應性:在代碼設計過程中,代碼反映了編碼對象的特點,便於識別和記憶,使系統維護人員容易了解和掌握,便於進行維護工作。
系統總體功能結構
網路通信系統包含以下主要功能。
用戶注冊;用戶登錄;
查找好友;查看好友資料;
添加好友;
刪除好友;
發送消息;
發送文件.
資料庫表主要用來存放用戶的注冊信息和用戶的好友資料,可利用兩張資料庫表來 存放用戶信息和用戶好友的資料。包括用戶的號碼,昵稱,密碼,在線與否,ip地址,資料,頭像號,性別,E-mail和籍貫等信息。其中,用戶昵稱和密碼是必需的欄位;在線與否是由系統自動設置的;其餘的信息是可選的欄位。
課題整體以JAVA為平台,採用Eclipse開發工具,並使用SQL Server 2000管理資料庫數據開發而成的基於Socket的集中式網路通信系統,系統採用客戶機/伺服器(C/S)的模式設計,是一個三層C/S結構,資料庫伺服器、應用程序伺服器端 、應用程序客戶端。系統採用C/S結構,可以將任務合理分配到客戶機端和伺服器端 ,從而降低了系統的通信開銷。
客戶層。
客戶層是應用程序的用戶介面部分,它擔負著用戶與應用間的對話功能,用於檢查用戶的輸入數據,顯示應用的輸出數據,為了直觀的進行操作,客戶層需要使用圖形用戶介面,若聊天用戶變更,系統只需改寫顯示控制和數據檢查程序即可,而不會影響其他兩層。
服務層。(功能層)
服務層相當於應用的本體,它是將具體的業務處理邏輯編入程序中。在應用設計中,必須避免在表示層和功能層之間進行多次的數據交換,這就需要盡可能進行一次性的業務處理達到優化整體設計的目的。
數據層
數據層是DBMS,本系統使用了Microsoft 公司的SQL Ssever2000資料庫伺服器來管理數據。SQL Ssever2000能迅速的執行大量數據的更新和檢索,因此,從功能層傳送到數
據層的要求一般都使用SQL語言。
這是我畢業論文一部分 做的是聊天系統 給你參考 無所謂給不給分~! 也不可能全給你 帶代碼有20兆
『陸』 求助 網路資料庫課程設計 ,我做的是一個留言板的程序 現在不知道資料庫的物理結構設計怎麼做了
好巧、 我也做的留言板、 都不知道咋做、話說肖鵬把關應該沒那麼嚴吧、
去csdn下載吧、、
20分還不少來、給我吧 哇哈哈
『柒』 sql資料庫課程設計怎麼做啊
靜軒圖書信息管理系統---摘 要
圖書管理系統是典型的信息管理系統(MIS),其開發主要包括後台資料庫的建立和維護以及前端應用程序的開發兩個方面。其能夠完成對圖書的添加、刪除、借閱、歸還和對讀者的管理等功能的操作。經過分析,使用 Microsoft�0�8
Visual Basic 6.0為開發工具,利用其提供的各種面向對象的可視化開發平台作為開發工具,採用面向對象技術,圖形化的應用開發環境,尤其是它有一個功能極其強大的集成環境提供給開發人員,使得開發人員可通過菜單、界面、圖形瀏覽工具、對話框以及嵌入的各種生成器來輕松地完成各種復雜的操作。並且,方便的界面製作,可以節省更多的時間來研發後台的程序代碼及資料庫。資料庫選用Access,其存儲方式單一,都存放在後綴為(.mdb)的資料庫文件中,界面友好易於操作管理。開發過程中不斷修正和改進,直到形成滿意的可行系統。
關鍵詞: VB程序設計、圖書管理系統、信息管理系統(MIS)、資料庫、Visual Basic6.0、面向對象(Object)、圖書管理。
『捌』 資料庫課程設計
問題
『玖』 急求一份資料庫課程設計
合肥經濟技術職業學院
電子信息系
課程設計報告
課程:資料庫課程設計
題目:學生管理系統
班級:09計 用
成員:
指導老師:
日期:
目錄
第一章 前言 3
1.1 課題簡介 3
1.2 設計目的 3
1.3 需求分析 4
第二章 資料庫實例的分析及應用 4
2.1 題目和E-R圖 4
2.2 資料庫的實現 5
2.3 資料庫結構屬性 8
2.3.1主鍵(主鍵約束PRIMARYKEY;索引設置) 8
2.3.2資料庫的默認值和規則 13
2.3.3 視圖和存儲過程 15
2.3.4 觸發器 17
第三章 總結報告 19
參考文獻 19
第一章 前言
1.1 課題簡介
資料庫技術是計算機科學技術發展最快,應用最為廣泛的技術之一。其在計算機設計,人工智慧,電子商務,企業管理,科學計算等諸多領域均得到了廣泛的應用,已經成為計算機信息系統和應用的核心技術和重要基礎。
本文主要介紹學生成績管理系統的資料庫設計,從需求分析到資料庫的運行與維護都進行詳細的敘述。本系統是利用SQL開發出來的。通過SQL建立學生成績管理系統,大大方便和簡化了數據的查詢和處理,管理員可以通過SQL語言對表內數據進行添加,刪除,修改,查詢等操作,還可以建立多用戶,對其使用許可權進行分配和回收。隨著數據處理的不斷進步和計算機網路的迅速發展,使資料庫應用系統不僅在功能而且在結構上都有了深刻的變化,而且運用在生活的每一個方面。通過學習關系代數,關系演算,函數依賴,關系模式分解,關系模式的規范化讓我們建立了扎實的關系資料庫理論基礎。而在掌握基本理論的基礎上掌握關系資料庫的設計方法,掌握現代信息系統的開發方法也顯得尤為必要。目前在關系資料庫中用得最多的SQL資料庫,開發資料庫的語言工具多數用C++.。所以對於計算機專業的學生來說掌握資料庫應用的基本技術,熟悉編程語言與SQL資料庫的結合運用是我們計算機專業學生之必備本領。本次課程設計是以學生信息管理系統為模擬模型,運用C++編程語言結合SQL資料庫所開發系統。
1.2 設計目的
隨著學生數量的日益增多,學校對學生的管理要求也越來越高,為了使信息技術與學生信息更好的結合在一起以及使學生成績的管理更加系統化,數字化,因此我們設計了該學生信息管理系統。運用基於E-R模型的資料庫設計方法和關系規范化理論做指導完成從系統的分析到設計直至系統的最終實現,開發學生成績管理系統,完成學生成績管理系統的全部功能。首先做好需求分析,並完成數據流圖,其次做概念分析,利用實體聯系的方法將需求分析的用戶需求抽象為信息結構,得到E-R圖,然後就是邏輯結構設計,將E-R圖轉換為計算機系統所支持的邏輯模型。最後利用SQL完成具體的實例。
1.3 需求分析
1、問題的提出:為了高效率的完成學生的管理,決定開發學生管理系統。
2、需完成的功能:
(1)能錄入、修改、查詢、輸出學生的檔案信息,這些信息包括學生的成績、課程、個人信息等。
(2)觸發器,索引,約束,規則,默認值,,視圖,存儲過程的建立及使用。
第二章 資料庫實例的分析及應用
2.1 題目和E-R圖
隨著學生數量的日益增多,學校對學生的管理要求也越來越高,為了使信息技術與學生信息更好的結合在一起以及使學生成績的管理更加系統化,數字化,因此我們設計了該學生信息管理系統。以下是次學生信息管理系統的E-R圖,進一步詳細的說明資料庫的結構以及用途。實體和屬性的定義:
學生表(學生學號,姓名,班級編號)
班級表(班級編號,班級名稱,系部編號)
系部表(系部編號,系部名)
教師表(教師名,課程編號,系部編號)
課程表(課程編號,課程名,學分,教師,系部號)
下面是E-R圖,用來進一步說明資料庫的作用和用途:
2.2 資料庫的實現
運用SQL Server 2000數據設計表格的物理結構如下:
班級表:
學生表:
系部表:
課程表:
教師表:
各表關系圖:
設計表格的具體填入數據是:
班級表:
學生表:
教師表:
系部表:
課程表:
2.3 資料庫結構屬性
2.3.1主鍵(主鍵約束PRIMARYKEY;索引設置)
1.索引與書目錄相似,可以快速找到指定內容。索引通過記錄表中的關鍵值來指向表中的記錄,這樣資料庫就不用掃描而能定位到相關的記錄。以下是對各表進行索引的實現。
學生表的設置如圖:
班級表的設計如下:
教師表的設計如下:
課程表的設計如下:
系部表的設置如下:
2.約束定義了關於允許什麼數據進入資料庫的規則,是分配給表或表中某列的一個屬性。使用約束的目的在於防止列中出現非法的數據,可以自動維護資料庫的數據完整性。下面是用企業管理器對class表實現的主鍵約束:
2.3.2資料庫的默認值和規則
1.使用默認可以實現當用戶在向數據表中插入新紀錄時,如果沒有給出某列的輸入值,則由SQL Server自動為該列輸入默認值。下面是對class表進行實現默認的功能:
實現默認值:
2.規則也是實現數據完整性的方法之一,作用與CHECK約束類似,在向表的某列插入或更新數據時,用它來限制輸入值的取值范圍。下面我們運用對Course表進行規則的實現:
2.3.3 視圖和存儲過程
1.視圖的作用相當於一個虛擬表,是用戶查看資料庫表中數據的一種方式使用戶通過他能夠以需要的方式瀏覽表中的部分或全部數據,而數據的物理存放位置仍然在資料庫的表中。我們通過在企業管理器中創建視圖管理視圖應用視圖,更加形象具體的說明了視圖的作用。
添加表格到視圖:
添加數據並運行:
運行結果,具體視圖呈現:
2.存儲過程是一組編譯在單個執行計劃中的Transact-SQL語句,它將一些固定的操作集中起來交給SQL-Server資料庫伺服器完成,以實現某個任務。首先我們在查詢管理器中創建存儲過程:
並且執行存儲過程:
在企業管理器中也可以體現出存儲過程:
2.3.4 觸發器
觸發器的作用是強制執行業務規則。SQL Server主要提供了兩種機制來強制業務規則和數據完整性:約束和觸發器。觸發器在指定的表中數據發生變化時被調用以響應INSERT、UPDATE或DELETE事件。觸發器可以查詢其他表,並可以包含復雜的語句。SQL Server將觸發器和觸發它的語句作為可在觸發器內回滾的單個事物對待,如果檢測到嚴重錯誤,則整個事物即自動回滾。首先我們在查詢管理器中新建觸發器:
新建觸發器:
管理觸發器:
第三章 總結報告
這次的課程設計真的做起來困難重重,深刻體會到做一個軟體,裡面需要的很多知識我們沒有接觸過,去圖書館找書的時候發現,我們學的僅僅是皮毛,還有很多東西需要我們去發掘,就算是借一本書看完它,我們還是會發現還有很多知識沒有吃透,這需要我們不斷的實踐,不斷地自學習,不斷地發現問題去思考問題。
經過不斷地測試,不斷地改進,其中還是發現了不少問題,第一次做這些工作,沒有任何經驗,甚至無從下手,還是很謝謝老師和同學的幫忙,從中也學到了一些代碼的寫法,為什麼要這樣寫,通過和同學的討論,找到一些書本上沒有的方法,如何數據綁定等等,怎樣從資料庫中將數據提取出來放到一個文本框或者標簽內,這些東西是組成界面的東西,雖然小,但是可以體現整個軟體的水平,其實並不需要建多少資料庫的表,寫多少復雜的存儲過程,是不是用了資料庫函數,觸發器等等,但是至少要弄明白這些東西如果操作,清晰思路才能將功能分清晰。
經過一段時間的學習與實踐,學生信息管理系統基本上開發好了。該系統具備了:添加、修改、刪除、瀏覽、查詢、輸出日程信息,實現了根據用戶需求查看日程等功能。作為一個個人日程管理系統,本系統所提供的功能的確太少了一些,僅僅只實現了一些基本的功能,有很多地方還有待擴展和改良。
人如果沒有自信,沒有目標,沒有信心就不可能把事情做好,當其他人都在迷茫的時候,自己一定要堅信目標,大學畢業出去即是面臨找工作,從學習這個專業,到以後做這方面的工作都需要不斷地去學習去實踐,這次實踐可以給我們敲一個警鍾,我們面臨畢業,面臨擇業,需要這些實踐經驗,在困難面前要勇於嘗試,這是這次課程設計給我的最大感想。在此特別感謝老師的辛苦指導和教育!
參考文獻
黃維通編《SQL Server2000 簡明教程》
徐人鳳 曾建華編《SQL Server2000資料庫及應用》
『拾』 資料庫課程設計怎麼寫
基本就是一下幾步吧:
1.需求分析
2.形成數據字典
3.建立ER圖
4.建立表,形成資料庫
5.編寫代碼,生成系統
6.系統試運行