




免費預(yù)覽已結(jié)束,剩余16頁可下載查看
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
洛洛 陽陽 理理 工工 學(xué)學(xué) 院院 課課 程程 設(shè)設(shè) 計計 報報 告告 課程名稱 數(shù)據(jù)庫課程設(shè)計 設(shè)計題目 藥店管理系統(tǒng) 專 業(yè) 計算機科學(xué)與技術(shù) 班 級 學(xué) 號 姓 名 完成日期 2016 12 30 課課 程程 設(shè)設(shè) 計計 任任 務(wù)務(wù) 書書 設(shè)計題目 設(shè)計題目 藥店管理系統(tǒng) 設(shè)計內(nèi)容與要求 設(shè)計內(nèi)容與要求 設(shè)計內(nèi)容 設(shè)計實現(xiàn)藥店管理系統(tǒng) 能夠?qū)崿F(xiàn)藥品庫存管理 銷售信息管理 和查詢功能 庫存管理 包括藥品入庫 出庫管理 藥品庫存報警 藥品有效期管理 過 期報警 銷售管理 根據(jù)實際銷售自動生成銷售單據(jù) 如果是會員 則藥品價格按 95 折計算 查詢及統(tǒng)計功能 對指定時間段內(nèi)的出 入庫進行查詢 統(tǒng)計 對藥品有效期 進行查詢 統(tǒng)計 對藥品過期進行查詢 統(tǒng)計 對指定時間段內(nèi)的藥品銷售進行查 詢 統(tǒng)計以及利潤查詢 統(tǒng)計等 能幫顧客查詢藥品信息 能按品名 生產(chǎn)廠家 藥品類別 存貨量進行查詢 設(shè)設(shè)計計要要求求 1 完成數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計 邏輯結(jié)構(gòu)設(shè)計 物理結(jié)構(gòu)設(shè)計 2 創(chuàng)建數(shù)據(jù)庫 完成表 存儲過程 觸發(fā)器等數(shù)據(jù)庫對象設(shè)計 3 用 JAVA 語言 完成信息系統(tǒng)的部分程序界面設(shè)計與調(diào)試運行 指導(dǎo)教師 2016 年 12 月 24 日 課課 程程 設(shè)設(shè) 計計 評評 語語 成績 成績 指導(dǎo)教師 2017 年 1 月 3 日 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 I 目錄目錄 1 概述 1 1 1 本設(shè)計的背景和意義 1 1 2 采用的數(shù)據(jù)開發(fā)工具及應(yīng)用開發(fā)工具 1 2 需求分析 1 2 1 功能需求 1 2 2 數(shù)據(jù)需求 1 3 概念結(jié)構(gòu)設(shè)計 2 4 邏輯結(jié)構(gòu)設(shè)計 2 4 1 建立關(guān)系模式 3 4 2 關(guān)系模式規(guī)范化處理 3 5 物理結(jié)構(gòu)設(shè)計 3 5 1 建立數(shù)據(jù)庫 3 5 2 數(shù)據(jù)表創(chuàng)建 3 5 2 存儲過程創(chuàng)建 6 5 3 數(shù)據(jù)觸發(fā)器創(chuàng)建 11 6 JAVA 對數(shù)據(jù)庫系統(tǒng)的實現(xiàn) 12 6 1 登錄界面及系統(tǒng)主界面 12 6 2 庫存管理 13 6 3 銷售管理 14 6 4 信息查詢 15 7 設(shè)計總結(jié) 17 附錄 18 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 1 1 概述概述 1 1 本設(shè)計的背景和意義本設(shè)計的背景和意義 了解到部分藥店因為規(guī)模較小沒有專業(yè)的藥店管理系統(tǒng) 本設(shè)計能夠適應(yīng)于 規(guī)模較小的藥店 通過運用數(shù)據(jù)庫庫技術(shù) 不僅可以使藥店的管理更加方便 并 且還能提高數(shù)據(jù)的正確性 該藥店管理系統(tǒng)以進貨 存儲 銷售為主要業(yè)務(wù) 分 別實現(xiàn)其他具體功能 1 2采用的數(shù)據(jù)開發(fā)工具及應(yīng)用開發(fā)工具采用的數(shù)據(jù)開發(fā)工具及應(yīng)用開發(fā)工具 本設(shè)計采用的數(shù)據(jù)開發(fā)工具為 SQL Server 2008 應(yīng)用開發(fā)工具為 Eclipse 2 需求分析需求分析 2 1 功能需求功能需求 藥店管理系統(tǒng)能夠?qū)崿F(xiàn)藥品庫存 銷售信息管理和查詢功能 根據(jù)實際銷 售自動生成銷售單據(jù) 能幫顧客查詢藥品信息 能按品名 生產(chǎn)廠家 藥品類別 存貨量進行查詢 2 2 數(shù)據(jù)需求數(shù)據(jù)需求 經(jīng)過對學(xué)校附近的藥店的調(diào)研以及在網(wǎng)上查找的資料 藥店藥品管理系統(tǒng)的 處理對象主要包括 藥品信息 供應(yīng)商信息 顧客信息 藥品銷售信息 藥品存 儲信息等幾個方面 根據(jù)市場需求需要的數(shù)據(jù)組成如下需要的數(shù)據(jù)有操作員 會 員 藥品 訂單 廠家 進貨單這些實體的組成數(shù)據(jù)有 操作人員需要包括 賬 號 密碼 姓名 聯(lián)系電話 郵箱 地址 會員表 賬號 姓名 年齡 聯(lián)系電 話 郵箱 地址 藥品信息中含有 藥品 ID 藥品名 類別 生產(chǎn)日期 有效 期 進價 售價 生產(chǎn)廠家 訂單詳情中含有的有 訂單編號 藥品名 購買數(shù) 量 售價 購買人員 銷售日期 廠家信息包括 廠家編號 廠家名 電話 地 址 進藥表 藥品 ID 操作員 進藥日期 進藥數(shù)量 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 2 3概念結(jié)構(gòu)設(shè)計概念結(jié)構(gòu)設(shè)計 將需求分析階段得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型的過程就是 概念結(jié)構(gòu)設(shè)計 它是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵 它通過對用戶需求進行綜合 歸納 抽象 形成一個獨立于具體 DBMS 的概念模型 根據(jù)需求分析 在該系統(tǒng)中存在以下實體集 藥品信息實體集 顧客信 息實體集 廠家信息實體集 銷售信息實體集等等 根據(jù)需求做出的 E R 圖如下圖 2 1 總體 E R 圖 2 3 1 N N N 1 N 姓名 管理 1 N 存儲 N 倉庫 N 1 年齡 姓名 賬號 電話 郵箱 編號 品名 數(shù)量 售價 買家 日期 賬號 密碼 姓名 電話 郵箱 地址 藥品 操作員 訂單 會員 提交 參照 處理 廠家生產(chǎn) 1 1 廠名 類別 ID 電話 地址 名稱 編號 編號 數(shù)量 生產(chǎn)期有效期 進價 售價 批次 ID 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 3 4 邏輯結(jié)構(gòu)設(shè)計邏輯結(jié)構(gòu)設(shè)計 4 1 建立關(guān)系模式建立關(guān)系模式 操作人員 賬號 密碼 姓名 聯(lián)系電話 郵箱 地址 會員 賬號 姓名 年齡 聯(lián)系電話 郵箱 地址 藥品 藥品 ID 藥品名稱 類別 生產(chǎn)廠家編號 倉庫 批次 ID 藥品 ID 藥品名 類別 生產(chǎn)日期 有效期 進價 售價 生產(chǎn)廠家 訂單詳情 訂單編號 藥品名 購買數(shù)量 售價 購買人員 銷售日期 操 作員姓名 廠家 廠家編號 廠家名 電話 地址 進藥 藥品 ID 操作員姓名 進藥日期 進藥數(shù)量 4 2 關(guān)系模式規(guī)范化處理關(guān)系模式規(guī)范化處理 根據(jù)函數(shù)依賴關(guān)系 分析得每一個關(guān)系模式均滿足 3NF 5 物理結(jié)構(gòu)設(shè)計物理結(jié)構(gòu)設(shè)計 5 1 建立數(shù)據(jù)庫建立數(shù)據(jù)庫 物理設(shè)計時為邏輯數(shù)據(jù)模型選取一個最合適應(yīng)用環(huán)境的物理結(jié)構(gòu) 包括存儲 結(jié)構(gòu)和存取方法 數(shù)據(jù)庫的物理結(jié)構(gòu)通常分為兩步 1 確定數(shù)據(jù)庫的物理結(jié)構(gòu) 在關(guān)系數(shù)據(jù)庫中主要指存取方法和存儲結(jié)構(gòu) 2 對物理結(jié)構(gòu)進行評價 評價的重點是時間和空間效率 由于本次課程設(shè)計的數(shù)據(jù)庫數(shù)據(jù)量不大 再加上數(shù)據(jù)庫實施軟件會自動建立 一些索引 所以這里沒有必要特別建立索引 需要創(chuàng)建一個數(shù)據(jù)庫文件 命名為 DrugControl 創(chuàng)建數(shù)據(jù)庫語句為 create database DrugControl 5 2 數(shù)據(jù)表創(chuàng)建數(shù)據(jù)表創(chuàng)建 1 創(chuàng)建 Drug 表 如圖 5 1 create table Drug 品名 Dno varchar 10 primary key 藥品編號 Dname varchar 20 not null 藥品名 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 4 Dclass varchar 20 藥品類別 Sname varchar 20 生產(chǎn)廠家 圖 5 1 2 創(chuàng)建供應(yīng)商 Suppliter 表如圖 5 2 create table Supplier 供應(yīng)商 Sno varchar 10 primary key Sname varchar 20 not null Sphone char 11 Semail varchar 20 Saddress varchar 50 圖 5 2 3 創(chuàng)建管理員表 Opert 如圖 5 3 create table Opert 管理員 Mno varchar 10 primary key Mpassw varchar 20 Mname varchar 20 not null Mphone char 11 Memail varchar 20 Maddress varchar 50 圖 5 3 4 創(chuàng)建會員表 Customer 如圖 5 4 create table Customer 會員 Cno varchar 10 primary key Cname varchar 20 not null Cage int check Cage 0 or Cage is null Cphone char 11 Cemail varchar 20 Caddress varchar 50 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 5 圖 5 4 5 創(chuàng)建庫存表 Dugstore 如圖 5 5 create table Drugstore 庫存 Lno varchar 10 primary key 入庫編號 Dno varchar 10 藥品編號 Dname varchar 20 not null 藥品名 Dclass varchar 20 藥品類別 Pquantity int 藥品數(shù)量 Idate date 入庫時間 out date date Dbidd float Dprice float Sname varchar 20 廠家名 Mname varchar 20 操作員姓名 foreign key Dno references Drug Dno 圖 5 5 6 創(chuàng)建出售表 Sale 如圖 5 6 create table Sale 出售 Slno varchar 10 Dno varchar 10 Cno varchar 10 Ddprice float Mquantity int 銷售數(shù)量 Amoney float Idate date 銷售日期 foreign key Dno references Drug Dno 圖 5 6 7 創(chuàng)建缺貨單 A 如圖 5 7 create table Absence 缺貨單 Lno varchar 10 primary key Dno varchar 10 Pquantity int Pdade date 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 6 Astate varchar 10 foreign key Dno references Drug Dno 圖 5 7 8 數(shù)據(jù)視圖創(chuàng)建 根據(jù)需求僅需要創(chuàng)建一個視圖就可以完成所需要的功能 需要創(chuàng)建的視圖為 即將過期的藥 品 如圖 5 8 create view 即將過期藥品單 Lno Dname Dclass Pquantity lessdate as select Lno Dname Dclass Pquantity DATEDIFF day GETDATE out date from Drugstore 圖 5 8 5 2 存儲過程創(chuàng)建存儲過程創(chuàng)建 1 創(chuàng)建增加會員存儲過程 增加會員 create procedure 增加會員 Cname varchar 20 Cage int Cphone char 11 Ccemail varchar 20 Caddress varchar 50 as declare i int n varchar 10 select i max cast substring Cno 2 len Cno 1 as int 1 from Customer 獲取最大值 1 select n substring C0000 1 5 len i cast i as varchar 5 轉(zhuǎn) 換成編號 insert into Customer values n Cname Cage Cphone Ccemail Caddress 驗證存儲過程如圖5 9 exec 增加會員 沒 12 111111 1 理工 圖5 9 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 7 2 創(chuàng)建增加操作人員存儲過程 增加操作人員 create procedure 增加操作員 Mpassw varchar 20 Mname varchar 20 Mmphone char 11 Mmemail varchar 20 Mmaddress varchar 50 as declare i int n varchar 10 select i max cast substring Mno 2 len Mno 1 as int 1 from Opert 獲取最大值 1 select n substring C0000 1 5 len i cast i as varchar 5 轉(zhuǎn) 換成編號 insert into Opert values n Mpassw Mname Mmphone Mmemail Mmaddress 驗證存儲過程如圖5 10 exec 增加操作員 1 感冒 11111111 111111 洛陽理工 圖5 10 3 創(chuàng)建增加品名存儲過程 增加品名 create procedure 增加品名 Dname varchar 20 Dclass varchar 20 Sname varchar 20 as declare i int n varchar 10 select i max cast substring Dno 2 len Dno 1 as int 1 from Drug 獲取最大值 1 select n substring D0000 1 5 len i cast i as varchar 5 轉(zhuǎn) 換成編號 insert into Drug values n Dname Dclass Sname 驗證存儲過程如圖5 11 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 8 exec 增加品名 感冒靈顆粒 感冒用藥類 蜀川 圖 5 11 4 創(chuàng)建增加入庫存儲過程 增加入庫 create procedure 增加藥品 Ddno varchar 10 入庫編號 Dname varchar 20 Dclass varchar 20 Pquantity int Sname varchar 20 Out date date Dbidd float Dprice float Mname varchar 20 as declare i int n varchar 10 select i max cast substring Lno 2 len Lno 1 as int 1 from Drugstore 獲取最大值 1 select n substring D0000 1 5 len i cast i as varchar 5 轉(zhuǎn) 換成編號 insert into Drugstore values n Ddno Dname Dclass Pquantity GETDATE Out date Dbi dd Dprice Sname Mname 驗證存儲過程如圖5 12 exec 增加藥品 D0002 感冒靈顆粒 感冒用藥類 5 蜀川 2017 11 11 1 2 ll 圖5 12 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 9 5 創(chuàng)建增加供應(yīng)商存儲過程 增加供應(yīng)商 create procedure 增加供應(yīng)商 Sname varchar 20 Sphone char 12 Saddress varchar 50 Semail varchar 20 as declare i int n varchar 10 select i max cast substring Sno 2 len Sno 1 as int 1 from Supplier 獲取最大值 1 select n substring S0000 1 5 len i cast i as varchar 5 轉(zhuǎn) 換成編號 insert into Supplier values n Sname Sphone Semail Saddress 驗證存儲過程如圖5 13 exec 增加供應(yīng)商 111 222 洛陽理工 112 圖5 13 6 創(chuàng)建增加銷售存儲過程 增加銷售單 create procedure 增加訂單 Dno varchar 20 Cno varchar 20 Ddprice float Mquantity int as declare i int n varchar 10 select i max cast substring Slno 2 len Slno 1 as int 1 from Sale 獲取最大值 1 select n substring M0000 1 5 len i cast i as varchar 5 轉(zhuǎn) 換成編號 insert into Sale values n Dno Cno Ddprice Mquantity getdate update Drugstore set Pquantity Pquantity Mquantity where Lno Dno 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 10 驗證存儲過程如圖5 14 exec 增加訂單 M0003 D0002 C0001 22 15 440 圖5 14 7 創(chuàng)建缺貨單存儲過程 更新缺貨單 create procedure 更新缺貨單 as declare Dno varchar 5 Pquantity int i int n varchar 5 Astate varchar 10 con int declare c cursor for select Dno sum Pquantity from Drugstore group by Dno open c fetch c into Dno Pquantity while FETCH STATUS 0 begin if Pquantity19 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 11 begin declare c3 cursor for select count Astate Astate from Absence group by Dno Astate open c3 fetch c3 into con Astate while FETCH STATUS 0 begin if Astate 未處理 and con 1 begin update Absence set Astate 已處理 where Dno Dno end fetch c3 into con Astate end close c3 deallocate c3 end fetch c into Dno Pquantity end close c deallocate c 5 3 數(shù)據(jù)觸發(fā)器創(chuàng)建數(shù)據(jù)觸發(fā)器創(chuàng)建 根據(jù)數(shù)據(jù)要求在出售過程中會出現(xiàn)庫存不足即需要創(chuàng)建觸發(fā)器需要達到的功能為在庫存 表中更新數(shù)據(jù)時執(zhí)行存儲過程缺貨單 create trigger Drug short on Drugstore after update as begin exec 更新缺貨單 end 驗證觸發(fā)器如圖5 14 update Drugstore set Pquantity 1 where Dno D0002 如圖5 15原缺貨單 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 12 圖 5 15 執(zhí)行過后 6 Java 對數(shù)據(jù)庫系統(tǒng)的實現(xiàn)對數(shù)據(jù)庫系統(tǒng)的實現(xiàn) 6 1 登錄界面及系統(tǒng)主界面登錄界面及系統(tǒng)主界面 1 藥店登錄界面如圖6 1 圖6 1 2 藥店主頁面如圖6 2 圖6 2 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 13 6 2 庫存管理庫存管理 1 入庫管理界面如圖6 3能夠根據(jù)名稱和藥品類型進行搜索單擊要入庫的藥品會在下 面文本框中顯示出來防止藥品入庫錯誤 圖6 3 2 增加藥品界面如圖6 4 能夠進行藥品類型輸入 增加藥品類型擴充藥品庫 圖6 4 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 14 3 修改藥品信息頁面如圖 6 5 能夠?qū)λ幤沸畔⒏?用來修改和刪除藥品信息 圖6 5 6 3 銷售管理銷售管理 銷售管理頁面如圖 6 6 用來出售藥品 能夠?qū)崟r獲取購買數(shù)量和會員 ID 中 輸入的信息 如果輸入正確的會員 ID 后并且在數(shù)據(jù)庫中檢測到有這個會員信息 則會自動在后面的會員由否改為是 計算總價的時候打折 在提交訂單后庫中數(shù) 量減少并且插入銷售表 圖6 6 洛 陽 理 工 學(xué) 院 課 程 設(shè) 計 報 告 15 6 4 信息查詢信息查詢 1 進行利潤查詢?nèi)鐖D 6 7 如果是匿名用戶購買就顯示為匿名 能夠根據(jù) 銷售中的出售時間來進行規(guī)定時間內(nèi)的利潤查詢并且能夠顯示出來每筆訂單和總 價 圖 6 7 2 缺貨單查詢?nèi)鐖D 6 8 如果在售賣中數(shù)量低于 20 就會自動在缺貨單 中顯示出來 并且在添加藥品后自動將
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年湖北麻城思源學(xué)校英語七下期末統(tǒng)考模擬試題含答案
- 河南省三門峽市2025年八下英語期末學(xué)業(yè)質(zhì)量監(jiān)測試題含答案
- 數(shù)字化技術(shù)在圖書零售門店的電子書銷售分析報告
- 2025年醫(yī)藥企業(yè)研發(fā)外包(CRO)模式下的質(zhì)量控制與風(fēng)險評估體系構(gòu)建報告
- 2025年綠色供應(yīng)鏈管理在飲料制造業(yè)的應(yīng)用與推廣研究報告
- 原子彈相關(guān)話題課件
- 2025年數(shù)字孿生在城市公共安全規(guī)劃與建設(shè)中的應(yīng)急通信保障報告
- 2025年儲能電池?zé)峁芾硐到y(tǒng)在智慧教育領(lǐng)域的應(yīng)用前景報告
- 2025年綠色建筑材料市場推廣策略與政策支持下的市場競爭力研究報告
- 32025年醫(yī)療器械冷鏈物流行業(yè)區(qū)域發(fā)展不平衡問題分析及優(yōu)化策略報告
- 廈門大學(xué)2023年826物理化學(xué)考研真題(含答案)
- 市政工程施工安全臺帳范本12本(含內(nèi)容)
- 《食管胃底靜脈曲張》課件
- 周圍性面癱的分期治療技術(shù)課件
- AutoCAD 2020中文版從入門到精通(標準版)
- 初中英語2023年中考專題訓(xùn)練任務(wù)型閱讀-判斷正誤篇
- 2022年江西南昌高新技術(shù)產(chǎn)業(yè)開發(fā)區(qū)人民檢察院聘用制檢察輔助人員招聘考試真題
- 小學(xué)安全隱患排查表
- 學(xué)校財務(wù)人員述職報告范文
- 履帶式微耕機的結(jié)構(gòu)設(shè)計說明書
- 一種鰭狀結(jié)型場效應(yīng)晶體管及其制備方法、芯片與流程
評論
0/150
提交評論