當前位置:首頁 » 數據倉庫 » 資料庫課程設計說明書
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

資料庫課程設計說明書

發布時間: 2023-06-08 08:45:45

資料庫應用課程設計的報告

資料庫課程設計報告 目錄目錄……………………………………………………………………………………1一.設計目標…………………………………………………………………………2二.系統介紹…………………………………………………………………………2三.資料庫設計……………………………………………………………………....2 1.需求分析……………………………………………………………………….2 2.概念結構設計………………………………………………………………….3 (1)實體設計………………………………………………………………..3 (2)ER圖……………………………………………………………………3 3.邏輯結構設計………………………………………………………………….4四.應用程序設計……………………………………………………………………4 1.delphi7.0開發環境……………………………………………………………4 2.軟體分析…………………………………………………………………..…4 (1)軟體的需求分析………………………………………………………..4 (2)軟體的基本功能………………………………………………………..5 3.軟體的設計與實現…………………………………………………………….6 五.實現的應用系統介紹…………………………………………………………….8 1.系統模塊…………………………………………………………………….8 2. 文件簡介…………………………………………………………………….8 3 .系統運行…………………………………………………………………….8 六.總結………………………………………………………………………………17 一.設計目標理論應用--運用資料庫設計理論設計一個較完善的有實際意義的資料庫結構;工具使用--掌握目前流行資料庫管理系統工具和前端應用開發工具;應用開發--為資料庫開發相應應用程序,構成完整的資料庫應用系統;報告編寫--用文字處理軟體編寫高質量的設計報告。二.系統簡介名稱:超市進銷存管系統功能:基於超市管理的全面自動化,減少入庫管理、出庫管理及庫存管理中的漏洞,節約不少管理開支,增加企業收入。 實現對產品的增加、修改、刪除、以及日常查詢,對產品的出庫、入庫進行管理。同時對營銷狀況進行簡單的分析,並可以導出各種查詢報表。資料庫:ACCESS實現:Delphi 7.0系統構架:C/S(Client/Server )三.資料庫設計.1.需求分析:超市進銷存管理系統2.概念結構設計(1)實體設計商品信息(商品編號,商品名稱,商品單位,商品單價,類別,產地,說明)進貨信息(進貨編號,商品編號,進貨單價,進貨數量,進貨時間,經手人,供貨單位)出貨信息(出貨編號,商品編號,出貨單價,出貨數量,經手人,接收人及說明等)庫存信息(商品編號,庫存說明,說明等)用戶信息(用戶名,密碼,用戶類型)(2)E-R圖包含說明產地商品單價商品類別商品名稱商品編號商 品經手人進貨數量進貨時間進貨單價商品編號進貨編號供貨單位進貨記錄商品編號出貨數量接收人經手人出貨單價出貨編號出貨時間出貨記錄庫存記錄說明商品編號庫存說明111n3.邏輯結構設計關系模型(第1數據項為主鍵)商品信息(商品編號,商品名稱,商品單位,商品單價,類別,產地,說明)進貨信息(進貨編號,商品編號,進貨單價,進貨數量,進貨時間,經手人,供貨單位)出貨信息(出貨編號,商品編號,出貨單價,出貨數量,經手人,接收人及說明等)庫存信息(商品編號,庫存說明,說明等)用戶信息(用戶名,密碼,用戶類型)出貨商品金額(出貨時間,出貨單價,出貨數量,出貨金額)進貨商品金額(進貨時間,進貨單價,進貨數量,進貨金額)四.應用程序設計1.Delphi 7.0 開發環境 Delphi被稱為第四代編程語言,它具有簡單、高效、功能強大的特點。和VC相比,Delphi更簡單、更易於掌握,而在功能上卻絲毫不遜色;和VB相比,Delphi則功能更強大、更實用。可以說Delphi同時兼備了VC功能強大和VB簡單易學的特點。它一直是程序員至愛的編程工具。 Delphi 7的集成開發環境(1DE)和Delphi以前的版本基本一致。它把單、多個工具欄及一組窗口和應用程序設計在一起,將代碼以事件的形式與界面的每一元素建立聯系,使用戶很方便地在這個高度集成的開發環境的組成和各種輔助工具的使用方法和使用技巧。2.軟體分析(1)軟體的需求分析: 開發本軟體的主要目的是為了優化超市的日常管理。採用計算機管理信息系統為實現超市管理科學化和現代化,給它帶來了明顯的經濟效益和社會效益 (2)軟體的基本功能與說明: a.商品信息管理商品信息管理:用來管理系統中要用來進行進貨,出貨操作的商品的信息,包括添加,修改,刪除和查詢信息。其中,查詢可以進行精確查詢和模糊快速查詢。任意時刻,生成當前表格報表。 b. 用戶管理1.用戶添加該許可權只有管理員擁有,可以添加臨時用戶,或者增設管理員用戶。2.用戶刪除該許可權只有管理員擁有,可以刪除用戶。3.用戶密碼修改用來修改登陸用戶的密碼,長時間地使用一個密碼可能會使密碼不安全,導致整個系統的不安全,因此有必要定期修改密碼。 c. 營銷分析1.綜合分析某一時間段內,將該超市的進貨總額、出貨總額進行統計,並算出總盈利;將庫存中的商品總量統計出來。用戶可以列印分析所得報表。同時提供進貨情況查詢、出貨情況查詢、庫存情況查詢。2.日分析某一天中,將該超市的進貨總額、出貨總額進行統計,並算出總盈利;將庫存中的商品總量統計出來。用戶可以列印分析所得報表。 d. 日常操作商品進貨操作:用來完成商品的進貨操作。商品出貨操作:用來完成商品的出貨操作。進行進貨操作時,進貨編號以及進貨時間是自動生成的,無需改動,否則會出現錯誤。所生成的商品編號為該種類型商品的最大編號,且後面有提示用戶允許的編號范圍,超出此范圍會出錯,如果編號方式正確且大於最大編號,確定添加後會提示用戶填寫新加商品的相關信息。進行出貨操作時,出貨編號自動生成,用記無須改動。在出貨單價小於進貨的最小單價時會詢問是否繼續出貨,出貨數量不能大於庫存數量。e.信息查詢1.庫存信息查詢:用來查詢庫存的商品的信息,可以按照商品編號,商品名稱和商品類別來查詢,可以將查詢結果列印輸出。該查詢可以精確查找某一確定的商品的庫存信息,並將其列印輸出。同時,該查詢可以根據商品的庫存量來將商品中庫存不足、庫存飽和、庫存過剩的商品一一列出並提供列印輸出功能。2.進貨信息查詢:用來查詢商品的進貨記錄,可以按照商品編號,商品名稱,商品類別,經手人和進貨日期查詢,可以將查詢結果輸出。該查詢可以精確查找某一確定的商品或全部商品某一確定時間段的進貨情況,並將其列印輸出。同時以圖表的形式分析該種商品的進貨價格走勢分析圖。3.出貨信息查詢:用來查詢商品的出貨記錄,可以按照商品編號,商品名稱,商品類別,經手人和出貨日期查詢,可以將查詢結果列印輸出。該查詢可以精確查找某一確定的商品或全部商品某一確定時間段的出貨情況,並將其列印輸出。同時以圖表的形式分析該種商品的出貨價格走勢分析圖。3.軟體設計與實現添加、修改、刪除是通過delphi自帶函數實現的。查詢是通過添加sql語句或者直接在access中建立相對的查詢(如出貨商品金額、進貨商品金額查詢)實現的。(1).程序實現//添加adoquery1.Close;adoquery1.SQL.Clear;adoquery1.SQL.Add('select * from 進貨信息' );adoquery1.Open ;adoquery1.Append;adoquery1.fieldbyname('進貨編號').asstring:=edit1.Text;adoquery1.fieldbyname('商品編號').asstring:=edit2.Text;adoquery1.fieldbyname('進貨單價').asstring:=edit3.Text;adoquery1.fieldbyname('進貨數量').asstring:=edit4.Text;adoquery1.fieldbyname('進貨時間').asstring:=edit5.Text;adoquery1.fieldbyname('經手人').asstring:=combobox5.Text;adoquery1.fieldbyname('供貨單位').asstring:=edit7.Text;adoquery1.Post;快速添加:adoquery1.Append;//刪除一條記錄if Application.MessageBox('真的要刪除當前所選記錄嗎?','刪除確認',MB_YESNOCANCEL+MB_ICONQUESTION+MB_DEFBUTTON3)<>IDYES then abortelseadoquery1.delete;//修改一條記錄if Application.MessageBox('真的要修改當前所選記錄嗎?','修改確認',MB_YESNOCANCEL+MB_ICONQUESTION+MB_DEFBUTTON3)<>IDYES then AdoQuery1.CancelUpdateselseadoquery1.edit;//對表的排序procere TForm2.DBGrid1TitleClick(Column: TColumn);var i : integer;beginfor i:= 1 to DBGrid1.Columns.Count dobegin//恢復所有標題字體為默認DBGrid1.Columns[i-1].Title.Font.Color := clWindowText;DBGrid1.Columns[i-1].Title.Font.Style := [];end;if ADOQuery1.Sort<>(Column.FieldName+' ASC') then //判斷原排序方式beginADOQuery1.Sort := Column.FieldName+' ASC';Column.Title.Font.Color := clRed; //改變標題行字體為紅色,表示當前的排序方式為升序Column.Title.Font.Style := [fsBold];endelse beginADOQuery1.Sort := Column.FieldName+' DESC';Column.Title.Font.Color := clBlue; //改變標題行字體為紅色,表示當前的排序方式為降序Column.Title.Font.Style := [fsBold];end;end;//查詢示例adoquery2.close;adoquery2.sql.clear;adoquery2.SQL.Add('select distinct(進貨信息.進貨編號),商品信息.商品名稱,進貨信息.商品編號,商品信息.類別,進貨信息.進貨單價,進貨信息.進貨數量,進貨信息.進貨時間,進貨信息.經手人,進貨信息.供貨單位 from 進貨信息,商品信息 where 商品信息.商品編號=進貨信息.商品編號 and ');adoquery2.SQL.Add('進貨時間>=#'+DateToStr(DateTimePicker1.Date)+'# and 進貨時間<=#'+DateToStr(DateTimePicker2.Date+1)+'#');adoquery2.Open;*五.實現的應用系統介紹1.系統的模塊(1)主界面模塊Form1(2)信息管理模塊Form2,form18(3)日常操作模塊Form3(4)信息管理模塊Form5(5) 用戶管理模塊Form14(6)系統管理模塊用戶登陸:form8關於系統:form10退出系統:from11()登陸窗體Form82.文件簡介:(1)文件help包括生成jun_help幫助的所有源程序。(2)文件image系統所有用到的圖片文件(3) 文件project系統可執行文件project.exe。系統資料庫超市進銷存儲管理系統.mdb(4) 文件sounds系統所有用到的聲音文件(5) 文件unit_date系統自動生成的相關文件3.系統運行:1.歡迎:2.到達主界面後,提示登陸(系統管理—登陸系統)。用戶可以查看幫助獲得系統的相關信息:3.用戶登陸界面:4.若用戶為管理員,則可以進行用戶管理操作。用戶有權添加、修改、刪除其它用戶。5.若用戶為普通用戶,則用戶只能對自己的相關信息進行修改,添加用戶、刪除用戶不可用。6.商品信息管理模塊商品信息管理:用來管理系統中要用來進行進貨,出貨操作的商品的信息,包括添加,修改,刪除和查詢信息。其中,查詢可以進行精確查詢和模糊快速查詢。任意時刻,生成當前表格報表。7.營銷分析模塊:1).綜合分析某一時間段內,將該超市的進貨總額、出貨總額進行統計,並算出總盈利;將庫存中的商品總量統計出來。用戶可以列印分析所得報表。同時提供進貨情況查詢、出貨情況查詢、庫存情況查詢。2).日分析某一天中,將該超市的進貨總額、出貨總額進行統計,並算出總盈利;將庫存中的商品總量統計出來。用戶可以列印分析所得報表。8.商品進出貨操作模塊:1)進行進貨操作時,進貨編號以及進貨時間是自動生成的,無需改動,否則會出現錯誤。所生成的商品編號為該種類型商品的最大編號,且後面有提示用戶允許的編號范圍,超出此范圍會出錯,如果編號方式正確且大於最大編號,確定添加後會提示用戶填寫新加商品的相關信息。2)進行出貨操作時,出貨編號自動生成,用記無須改動。在出貨單價小於進貨的最小單價時會詢問是否繼續出貨,出貨數量不能大於庫存數量。9.信息查詢模塊:1).庫存信息查詢:用來查詢庫存的商品的信息,可以按照商品編號,商品名稱和商品類別來查詢,可以將查詢結果列印輸出。該查詢可以精確查找某一確定的商品的庫存信息,並將其列印輸出。同時,該查詢可以根據商品的庫存量來將商品中庫存不足、庫存飽和、庫存過剩的商品一一列出並提供列印輸出功能。2).進貨信息查詢:用來查詢商品的進貨記錄,可以按照商品編號,商品名稱,商品類別,經手人和進貨日期查詢,可以將查詢結果輸出。該查詢可以精確查找某一確定的商品或全部商品某一確定時間段的進貨情況,並將其列印輸出。同時以圖表的形式分析該種商品的進貨價格走勢分析圖。3).出貨信息查詢:用來查詢商品的出貨記錄,可以按照商品編號,商品名稱,商品類別,經手人和出貨日期查詢,可以將查詢結果列印輸出。該查詢可以精確查找某一確定的商品或全部商品某一確定時間段的出貨情況,並將其列印輸出。同時以圖表的形式分析該種商品的出貨價格走勢分析圖。10關於系統模塊:11.用戶管理模塊:1).用戶添加該許可權只有管理員擁有,可以添加臨時用戶,或者增設管理員用戶。2).用戶刪除該許可權只有管理員擁有,可以刪除用戶。3).用戶密碼修改用來修改登陸用戶的密碼,長時間地使用一個密碼可能會使密碼不安全,導致整個系統的不安全,因此有必要定期修改密碼。12.退出系統模塊:

⑵ 資料庫課程設計 汽車銷售信息管理系統

本汽車銷售信息管理系統是為滿足在校學生課程設計的需要,開發的一個基於JAVA技術的銷售信息管理系統,功能包括:客戶信息管理模塊、銷售信息管理模塊、售後服務信息管理模塊、市場策略公告模塊、統計報表管理模塊,模塊包括信息的添加、刪除、修改等功能。
本課程設計報告,對整個系統及其內部的各個功能模塊的構想、設計思路、實現方法和過程,做出了詳細的說明和介紹。

⑶ 資料庫設計說明書中的數據字典應該如何編寫啊

正文

1 引言

1.1編寫目的

說明編寫這份資料庫設計說明書的目的,指出預期的讀者。

1.2背景

說明:

a.說明待開發的資料庫的名稱和使用此資料庫的軟體系統的名稱;
b.列出該軟體系統開發項目的任務提出者、用戶以及將安裝該軟體和這個資料庫的計算站(中心)。

1.3定義

列出本文件中用到的專門術語的定義、外文首字母組詞的原片語。

1.4參考資料

列出有關的參考資料:

a.本項目的經核準的計劃任務書或合同、上級機關批文;
b.屬於本項目的其他已發表的文件;
c.本文件中各處引用到的文件資料,包括所要用到的軟體開發標准。

列出這些文件的標題、文件編號、發表日期和出版單位,說明能夠取得這些文件的來源。

2 外部設計

2.1標識符和狀態

聯系用途,詳細說明用於唯一地標識該資料庫的代碼、名稱或標識符,附加的描述性信息亦要給出。如果該資料庫屬於尚在實驗中、尚在測試中或是暫時使用的,則要說明這一特點及其有效時間范圍。

2.2使用它的程序

列出將要使用或訪問此資料庫的所有應用程序,對於這些應用程序的每一個,給出它的名稱和版本號。

2.3約定

陳述一個程序員或一個系統分析員為了能使用此資料庫而需要了解的建立標號、標識的約定,例如 用於標識資料庫的不同版本的約定和用於標識庫內各個文卷、、記錄、數據項的命名約定等。

2.4專門指導

向准備從事此資料庫的生成、從事此資料庫的測試、維護人員提供專門的指導,例如將被送入數據 庫的數據的格式和標准、送入資料庫的操作規程和步驟,用於產生、修改、更新或使用這些數據文卷的操 作指導。 如果這些指導的內容篇幅很長,列出可參閱的文件資料的名稱和章條。

2.5支持軟體

簡單介紹同此資料庫直接有關的支持軟體,如資料庫管理系統、存儲定位程序和用於裝入、生成、修 改、更新資料庫的程序等。說明這些軟體的名稱、版本號和主要功能特性,如所用數據模型的類型、允許 的數據容量等。列出這些支持軟體的技術文件的標題、編號及來源。

3 結構設計

3.1概念結構設計

說明本資料庫將反映的現實世界中的實體、屬性和它們之間的關系等的原始數據形式,包括各數據項、記錄、系、文卷的標識符、定義、類型、度量單位和值域,建立本資料庫的每一幅用戶視圖。

3.2邏輯結構設計

說明把上述原始數據進行分解、合並後重新組織起來的資料庫全局邏輯結構,包括所確定的關鍵字和屬性、重新確定的記錄結構和文卷結構、所建立的各個文卷之間的相互關系,形成本資料庫的資料庫管理員視圖。

3.3物理結構設計

建立系統程序員視圖,包括:

a.數據在內存中的安排,包括對索引區、緩沖區的設計;
b.所使用的外存設備及外存空間的組織,包括索引區、數據塊的組織與劃分;
c.訪問數據的方式方法。

4 運用設計

4.1數據字典設計

對資料庫設計中涉及到的各種項目,如數據項、記錄、系、文卷、模式、子模式等一般要建立起數據字典,以說明它們的標識符、同義名及有關信息。在本節中要說明對此數據字典設計的基本考慮。

4.2安全保密設計

說明在資料庫的設計中,將如何通過區分不同的訪問者、不同的訪問類型和不同的數據對象,進行分別對待而獲得的資料庫安全保密的設計考慮。

⑷ 課程設計倉庫管理系統的資料庫製作

資料庫原理及應用課程設計
一、課程設計的目的
《資料庫原理及應用》課程設計是計算機科學與技術專業集中實踐性環節之一,是學習完《資料庫原理及應用》課程後進行的一次全面的綜合練習。本課程設計主要在於加深學生對資料庫基礎理論和基本知識的理解,掌握資料庫應用系統設計開發的基本方法,達到進一步使學生綜合運用所學知識和增強實際動手能力的目的。

二、課程設計的任務與要求
要求學生根據自身對題目的理解情況,從給定的設計題目中選擇一個,以MS SQL Server作為後台資料庫平台,以PowerBuilder作為前台開發工具,完成一個小型資料庫應用系統的系統的分析、設計和開發。

三、課程設計說明書
倉儲管理系統
對於一個以生產或經營產品為主要業務的單位來說,倉庫管理系統至關重要。高效方便的倉庫管理系統,可以為生產經營提供堅強的後盾和有力的支持。效率低下甚至是混亂不堪的倉庫管理系統,無疑會成為企業健康發展的拖累甚至是枷鎖。使企業發展動力不足。本次資料庫設計實現了倉庫管理的高效化、電子化。通過本系統可以方便地實現倉庫管理中的貨物登記、出庫入庫等操作,使倉庫管理井井有條。
1系統需求分析
1.1系統功能需求分析

倉庫管理系統主要實現對庫存商品的管理,對商品出庫、入庫的管理,和對倉庫管理系統維護的功能。具體要實現的功能包括:
1)庫存商品管理
查看資料庫中商品的名稱、編號、單價等信息。
2)商品出庫、入庫管理
入庫、出庫單紀錄本次入庫、出庫的貨物名稱、數量,入庫、出庫的時間、商品單價以及總價,入庫、出庫的經手人等。
3)商品的查詢
輸入商品的編號或者商品的名稱查詢信息
4)用戶管理
用戶可以修改登錄密碼

1. 2數據需求分析
1.員工(ID ,姓名,密碼,許可權)
2.商品(商品名,商品編號,所屬類,單價)
3.出貨表(商品名,商品編號,數量,總價,經手人)
4.入貨表(商品名,商品編號,數量,總價,經手人)
5.查詢(商品名,商品編號,數量,單價)
根據上面的關系我們需要的數據基本上就上面所列出的數據。

2 系統總體設計
1)庫存商品管理
查看資料庫中商品的名稱、編號、單價等信息。
2)商品出庫、入庫管理
入庫、出庫單紀錄本次入庫、出庫的貨物名稱、數量,入庫、出庫的時間、商品單價以及總價,入庫、出庫的經手人等。
3)商品的查詢
輸入商品的編號或者商品的名稱查詢信息
4)用戶管理
用戶可以修改登錄密碼

2.1系統總體結構設計

2.2.1 E-R圖

2.2.2 關系模式

1.員工(ID ,姓名,密碼,許可權)
2.商品(商品名,商品編號,所屬類,單價)
3.出貨表(商品名,商品編號,數量,總價,經手人)
4.入貨表(商品名,商品編號,數量,總價,經手人)
5.查詢(商品名,商品編號,數量,單價)

2.2.3 數據表

「員工信息表」「商品信息表」「出貨單」「進貨單」的主鍵分別是:ID、商品編號、商品編號、商品編號。

員工信息表

商品信息表

出貨單

進貨單

3.系統實施

工作界面PB9.0,以下是我製作過程和運行中的一些截圖:
首先建立PB與SQL的數據鏈接:如果鏈接不成功,返回對以話框「資料庫連接錯誤,經檢查後再試!」

然後點Preview選項會彈出如下窗口:

一、 工作界面截圖:

分別建有:workspace、application、windows、dw_、da_等。

工作時檢測連接資料庫是否正常的程序代碼:
// Profile q
SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='DSN=倉庫;UID=;PWD='"

connect;
open(w_enter)

二、 運行結果的截圖:
這個是我運行後的第一個用戶界面,在界面中輸入管理員ID和密碼。我的管理員ID 和密碼分別為 1,123.點擊確定進入menu下一界面。

若ID和密碼分別輸入1,1234,則跳出以下界面:

確定按鈕所對應的代碼如下:
//定義兩個變數
string password,userid
password=sle_2.text
//檢索用戶名和密碼記錄
SELECT "員工信息表". "ID",
"員工信息表"."密碼"
INTO :userid,
:password
FROM "員工信息表"
WHERE "員工信息表"."ID" =:sle_1.text and "員工信息表"."密碼" =:sle_2.text;

//判斷用戶輸入的用戶名是否正確
if sqlca.sqlcode<>0 then
messagebox("錯誤!","ID或密碼錯誤,請重新輸入!",exclamation!,ok!,2)
else
messagebox("通過驗證!","ID和密碼正確,歡迎您使用本系統!",Information!,ok!,2)
open(w_main)
close(w_enter)
end if

取消按鈕所對應的代碼如下:
close(parent)
//關閉登錄窗口

三、 menu界面的截圖:
在本界面中我們通過點擊菜單欄上的不同管理按鈕來實現管理和操作的功能。
進貨—進貨單
出貨—出貨單
庫存—蔬菜類
—水產類
—肉類
系統維護—修改密碼
查詢

四、 進貨的截圖如下:
在本界面中,操作員可以輸入進貨信息

五、 進貨的截圖如下:
在本界面中,操作員可以輸入出貨信息

六、本界面是實現用戶更改自己的密碼的界面
用戶在登陸後根據上面的提示可以更改自己的密碼。

程序代碼如下:
string oldid
string oldp
string newp1
string newp2
oldid=trim(sle_1.text)
oldp=trim(sle_2.text)
newp1=trim(sle_3.text)
newp2=trim(sle_4.text)

if len(oldp)=0 or isnull(oldp) then
oldp=space(10)
end if
if len(newp1)=0 or isnull(newp1) then
newp1=space(10)
end if
if len(newp2)=0 or isnull(newp2) then
newp2=space(10)
end if
select "operator"."password"
into :oldp
from "operator"
where "operator"."password"=:oldp;
if sqlca.sqlcode<>0 then
messagebox("提示","原密碼不正確!")
sle_2.text=""
sle_2.setfocus()
return
end if
if newp1<>newp2 then
messagebox("提示","兩次新密碼輸入不同!")
sle_4.text=""
sle_4.setfocus()
return
end if
Update "operator"
set "password"=:newp1
where "operator"."operator_id"=:oldid;
if sqlca.sqlcode<>0 then
rollback;
messagebox("提示","密碼更正錯誤! 請重設!")
return
end if
gs_password=newp1
commit;
messagebox("提示","密碼修改成功!")

七、本操作可以看倉庫里的商品並可對其進行插入和刪除

八、從倉庫查詢所需要的商品

4 系統評價
系統的功能基本上已經實現,但是還是不夠完善。但是在使用的時候還是能給用戶帶來一定的方便的。倉庫的進貨和出貨在本系統中能直觀的以表格形式反映出來,便於操作員的使用和決策者的管理。
4.1 系統特色
本系統要求用戶進行驗證之後才能進入相應的界面。有利於保護資料庫的安全,不被非法登陸使用。對於倉庫內貨物的進出管理要求嚴格,即進出貨時必須填寫相應的進出貨單據。便於企業管理查看賬目,保障了企業的穩定運行。通過本系統可以方便地實現倉庫管理中的貨物登記、出庫入庫等操作,使倉庫管理井井有條。在查看資料庫時可以方便的刪除資料庫中冗餘的信息和添加新的信息。
4.2 系統不足及改進
這個系統基本上實現了一些簡單的對系統所涉及表的更新、增加和刪除的功能。也實現對用戶登陸的安全上有了一定的限制,只有在正確輸入ID和密碼的時候才能進入系統。遠沒有達到大型公司的倉儲物資管理的要求,所創建的資料庫框架比較簡單,各表之間的聯系也過於簡單,沒有添加外鍵相互約束,用POWER BUILDER做出來的系統過於簡單、單調,需要進一步深入的調整優化,將各表之間的關系緊密聯系起來,相互制約,保證資料庫中數據的添加、刪除、更新,安全有序。操作窗口還需要進一步的進行美化,使用戶在使用中更賞心悅目。

5 課程設計心得
這次課程設計的主要目的是掌握資料庫應用系統分析設計的基本方法,基本掌握PowerBuilder,進一步提高分析解決問題的綜合能力。通過這次課程設計,我基本掌握了以上要求。但只有兩周的課程設計時間,時間比較倉促,所以開發的系統不是很完善,有一些功能未實現,但是倉庫管理的基本功能均已實現。以前對資料庫的很多知識認識都不深刻,做過這次課程設計之後,我對資料庫的知識有了一個比較系統的了解;比如:對表內一些欄位的約束,關系等的運用已經比較熟練。這個課程設計使我鞏固了資料庫的知識。
對於PowerBuilder也有了一定的了解,由於用的不多,所以運用的不是很熟練。剛開始的時候,對於PowerBuilder的語法,用法等一系列知識都不熟悉。當我基本完成此系統開發的時候,我發現其實也沒有那麼難,在未做之前我還害怕做不出來。經過對這個系統的開發,在開發過程中遇到但也解決了很多問題,所以說我們不能懼怕有困難而不去接觸認識它,我們要知難而上,只有這樣我們才能成長,才能有所發展。
這認為最難的一部分是用戶查看資料庫時通過插入刪除按鈕對資料庫的更改,因為我們在文本框中輸入的數字是被默認為字元型的,我在其中使用了integer(string)這個函數把字元型的進行了轉換,但是在使用的過程中並不能像我所想像的那樣有用。因為時間有限,所以這個問題還沒有完全的解決。
通過這次資料庫課程設計加深我對資料庫基礎理論和基本知識的理解,掌握資料庫應用系統設計開發的基本方法,達到進一步使我綜合運用所學知識和增強實際動手能力的目的。
我會繼續學習資料庫的知識,學習PowerBuilder的知識,只有通過不斷的學習充實自己,才能讓自己有所得。只有了知識的積淀,才能為自己的發展鋪平道路!

可以參考一下啊,最終還是要自己做的吧。。僅供參考。

⑸ 資料庫系統原理課程設計 -----圖書借閱管理系統

#include <string.h>
#include <iostream.h>

class Book{ // 書籍基類
protected:
char Title[40]; // 書名
long Code; // 條碼
int Type; // 0表示書,1表示雜志
public:
Book();
Book(char *title,long code);
void SetCode(long code){ Code = code; }
void SetTitle(char* tl){ strcpy(Title,tl); }
void SetType(bool type){Type = type; }
int GetType(){ return Type; }
long GetCode(){ return Code;}
virtual void Show(); // 顯示書的信息
friend ostream& operator<<(ostream& , Book&); // 重載插入運算符
friend istream& operator>>(istream& is, Book&); // 重載提取運算符
Book *Next; // 為創建每個讀者所借書鏈表而定義指針
};

class Item :public Book{ //書的款目
// char Title[40]; // 書名
char Author[20]; // 著者名
char IndexCode[10]; // 分類號
// long Code; // 條碼
public:
Item();
Item(char *author,char *title,char *index,int code);
Item(Item &);
void SetAuthor(char*);
void SetIndexCode(char*);
virtual void Show(); // 顯示書的信息
friend ostream& operator<<(ostream& os, Item&); // 重載插入運算符
friend istream& operator>>(istream& is, Item&); // 重載提取運算符
public:

};

class Magazine:public Book { //雜志類
int Volume;
enum LANG {CHINESE=1,ENGLISH} Lang; // 枚舉變數,確定語言類別
public:
Magazine():Book(){Volume = 0; Lang = CHINESE; Type = 1; }
Magazine(char *title,int vol,LANG lang,int code);
Magazine(Magazine&);
void SetVolume(int vol){Volume = vol;}
void SetLang(int lang){Lang = (LANG)lang;}
virtual void Show(); // 顯示雜志的信息
friend ostream& operator<<(ostream& os, Magazine&); // 重載插入運算符
friend istream& operator>>(istream& is, Magazine&); // 重載提取運算符
};

class Reader{ // 讀者信息類

char Name[20]; // 姓名
char Position[20]; // 職務
int Age; // 年齡
long Code; // 借書證號
Book* items; // 所借書鏈表
public:
Reader();
Reader(char *name,char *posi,int age,int code);
// Reader(Reader&);
~Reader();
long GetCode(){return Code;}
void SetName(char*);
void SetPosition(char*);
void SetAge(int);
void SetCode(long);
void AddBook(Item); // 添加所借書
void AddBook(Magazine); // 添加所借雜志
void DelBook(Book it); // 還書後減少所借書
void ShowBooks(); // 顯示所借書
void Show(); // 顯示讀者信息
friend ostream& operator<<(ostream& os, Reader&); // 重載插入運算符
friend istream& operator>>(istream& is, Reader&); // 重載提取運算符
public:
int Counter; //計數器,統計所借書數目
};

class Manager{ // 管理員類
char Name[20]; // 姓名
int Age; // 年齡
int Code; // 工號
friend class Library; // 將圖書館類聲明為友元
public:
Manager(){}
Manager(char*,int,int);
long GetCode(){ return Code;}
void Show();
friend ostream& operator<<(ostream& os, Manager&); // 重載插入運算符
friend istream& operator>>(istream& is, Manager&); // 重載提取運算符
};

class Loan { // 借閱信息類
int Type; // 0表示書,1表示雜志
Item item; // 借閱書
Magazine mag; // 借閱雜志
Reader reader; // 借閱者
Manager manager; // 借書操作員
int Code;
friend class Library; // 將圖書館類聲明為友元
public:
Loan(){ }
Loan(Loan & l);
int GetCode(){ return Code;}
void Show();
friend ostream& operator<<(ostream& os, Loan&); // 重載插入運算符
friend istream& operator>>(istream& is, Loan&); // 重載提取運算符
};
、、、、、、、、、、、、、、、、、、、、、、、
#include<iostream.h>
#include<string.h>
class Reader;
template<typename T> class DblList;
template<typename T> class DblNode{
public:
T Info;//數據域
DblNode<T> *llink,*rlink; //前驅(左鏈)、後繼(右鏈)指針
public:
DblNode(T data);//一般結點
DblNode();//頭結點
T GetInfo(){return Info;};
friend class DblList<T>;
friend class Library;
};

template<typename T>class DblList{
DblNode<T> *head,*current;
public:
DblList();
~DblList();
void Insert(const T& data);
DblNode<T>* Remove(DblNode<T>* p);
void Print();
int Length();//計算鏈表長度
DblNode<T> *Find(T data);//搜索數據與定值相同的結點
DblNode<T>* Find(int data);//按某個關鍵字查找
void MakeEmpty(); //清空鏈表
void ShowList(); //顯示鏈表各結點
friend istream& operator>>(istream&, DblList<typename T>&); // 重載輸入流運算符

friend ostream& operator<<(ostream& os, DblList<typename T>& dlist); // 重載輸出流運算符
friend class Library;
//其它操作
};

template<typename T> DblNode<T>::DblNode(){
llink=rlink=NULL;
}
template<typename T> DblNode<T>::DblNode(T data){
info=data;
llink=NULL;
rlink=NULL;
}

template<typename T> DblList<T>::DblList(){//建立表頭結點
head=new DblNode<T>();
head->rlink=head->llink=head;
current=NULL;
}
template<typename T> DblList<T>::~DblList(){
MakeEmpty();//清空鏈表
delete head;
}
template<typename T> void DblList<T>::MakeEmpty(){
DblNode<T> *tempP;
while(head->rlink!=head){
tempP=head->rlink;
head->rlink=tempP->rlink;//把頭結點後的第一個節點從鏈中脫離
tempP->rlink->llink=head;//處理左指針
delete tempP; //刪除(釋放)脫離下來的結點
}
current=NULL; //current指針恢復
}
template<typename T> void DblList<T>::Insert(const T & data){//新節點在鏈尾
current=new DblNode<T>;
current->Info=data;
current->rlink=head;//注意次序
current->llink=head->llink;
head->llink->rlink=current;
head->llink=current;//最後做
}
template<typename T> DblNode<T>* DblList<T>::Remove(DblNode<T>* p){ // 刪除結點
current=head->rlink;
while(current!=head&¤t!=p) current=current->rlink;
if(current==head) current=NULL;
else{//結點摘下
p->llink->rlink=p->rlink;
p->rlink->llink=p->llink;
p->rlink=p->llink=NULL;
}
return current;
}

template<typename T> DblNode<T>* DblList<T>::Find(T data){ // 按結點查找
current=head->rlink;
while(current!=head&¤t->Info!=data) current=current->rlink;
if(current==head) current=NULL;
return current;
}

template<typename T> DblNode<T>* DblList<T>::Find(int data){ // 按數據值查找結點
current=head->rlink;
int temp =current->Info.GetCode();
while(current!=head&&temp!=data){
current=current->rlink;
temp = current->Info.GetCode();
}
if(current==head) current=NULL;
return current;
}

template<typename T> void DblList<T>::Print(){ // 輸出鏈表
current=head->rlink;
while(current!=head){
cout<<current->Info<<'\t';
current=current->rlink;
}
cout<<endl;
}
template<typename T> int DblList<T>::Length(){ // 取得鏈表長度
int count=0;
current=head->rlink;
while(current!=head){
count++;
current=current->rlink;
}
return count;
}

template<typename T> void DblList<T>::ShowList(){ // 輸出鏈表各結點
int count=0;
current=head->rlink;
while(current!=head){
current->GetInfo().Show();
current=current->rlink;
}
return ;
}

template<typename T>
istream& operator>>(istream& is, DblList<typename T> &dlist){
int len;
T tt; // 定義局部變數讀入一個結點
is>>len;
for(int i= 0 ;i<len; i++){ // 循環讀入鏈表各結點
is>>tt;
dlist.Insert(tt);
}
return is;
}

template<typename T>
ostream& operator<<(ostream& os, DblList<typename T> &dlist){
DblNode<T> *tempP;
int len = dlist.Length();
os<<len<<' ';
tempP=dlist.head->rlink;
while(tempP!=dlist.head){ // 循環輸出鏈表各結點
os<<tempP->Info;
tempP = tempP->rlink;
}
return os;
}
#include "class.h"
#include "dblist.h"
#include <fstream.h>
class Library{ // 封裝圖書館流通業務的類
DblList<Item> item; // 在館圖書鏈表
DblList<Magazine> mag; // 在館雜志鏈表
DblList<Reader> reader; // 讀者鏈表
DblList<Loan> loan; // 借閱信息鏈表
DblList<Manager> manager; // 管理員信息鏈表

int itemNum; // 記錄在館圖書數目
int magNum; // 記錄在館雜志數目
int readerNum; // 記錄讀者數目
int loanNum; // 記錄借閱信息數目
int managerNum; // 記錄管理員數目
ofstream itemFileOut; // 文件流對象,保存圖書館書籍數據
ifstream itemFileIn; // 文件流對象,讀入圖書館書籍數據
ofstream magFileOut; // 文件流對象,保存圖書館雜志數據
ifstream magFileIn; // 文件流對象,讀入圖書館雜志數據
ofstream readerFileOut; // 文件流對象,保存圖書館讀者數據
ifstream readerFileIn; // 文件流對象,讀入圖書館讀者數據
ofstream loanFileOut; // 文件流對象,保存圖書館借閱信息數據
ifstream loanFileIn; // 文件流對象,讀入圖書館借閱信息
ofstream managerFileOut; // 文件流對象,保存圖書館管理員數據
ifstream managerFileIn; // 文件流對象,讀入圖書館管理員數據
public:
Library(); // 構造函數
~Library(); //析構函數
void Run(); // 圖書館類的運行函數
void CreateBibliotheca(); // 創建書目
void CreateReader(); // 創建讀者庫
void CreateManager(); // 創建管理員信息
int ShowMainMenu(); // 顯示主菜單函數
void Borrow(); // 借書操作
void Return(); // 還書操作
void Require(); // 查詢操作
void SaveInfo(); // 保存圖書館信息
void OpenInfo(); // 讀入圖書館信息
};

⑹ 求完整的SQL SERVER資料庫課程設計報告一份

先給檔仿你個意見 ,就是不知道你聽不聽得進去。
1.要是這個程序你自己能把它作此蠢侍為畢業設計獨立完成,(而且是按你下面的要求,從理論到實際,ER要合理,物理層也要合理),你能做到,可以在外面公司直接上班,工資2800起。-到8000看你自己的發揮。

2.你可能覺得你學校沒學到東西做不出來,其實我和你說,很多的軟體高手學校都是沒有學到東西的,而是在要畢業前4,5個月也就是畢業設計的時候學的。

完整的設計不可能有人給你做,除非你給個1500元上懸賞

3.倉庫信息管理系統或醫院管理系統,建議你是做倉庫的,醫院的比較難接觸到,比較大型。

=======================================
a.需求分析(倉庫--超市版)

入庫(產品資料入庫,名稱、進價、條碼、數量....................
出庫
訂貨(對庫存不足的商品訂貨,生成訂貨單v.............)
庫存統計(按時間,名稱,供應商....等等)
出庫統計(如上
供應商管理
客戶資料管理( 對送貨上門客戶等記..........,VIP、會員等等)
各種資料列印

B.概念設計(最好把這個和邏輯設計放到實際部門關系,部門設定之後再做)
比如中型超市 有獨立的點貨員 財務會計 出納 店長 經理等職務,先了解好超市的流程
有多少工作崗位,那些崗位需要電腦調用資料

建議你在3.3 3.3 3.5不要做得非常的書面化,(就是按書上那種很復雜的ER圖來表示,因為一個正確的ER圖會耗掉你很多的精力,你只要把各種要用ER圖表示的關系圖用草圖表示出來,原理上通了,然後設定有什麼表,欄位 就開始設計

建議,比如你用DEPHI軟體來設計,你肯定會逐漸發現有非常多森吵非常漂亮的第3方控制項,或方便的第3方控制項,或看同學使用起來很牛BXX的樣子,你最好是不要去用,第3方控制項非常的多,你永遠都使用不完,也學不完,等你做好了基本版本後要是有時間再去考慮這些。精力不要分散了。