




免費預(yù)覽已結(jié)束,剩余16頁可下載查看
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
洛洛 陽陽 理理 工工 學(xué)學(xué) 院院 課課 程程 設(shè)設(shè) 計計 報報 告告 課程名稱 數(shù)據(jù)庫課程設(shè)計 設(shè)計題目 藥店管理系統(tǒng) 專 業(yè) 計算機(jī)科學(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)的出 入庫進(jìn)行查詢 統(tǒng)計 對藥品有效期 進(jìn)行查詢 統(tǒng)計 對藥品過期進(jìn)行查詢 統(tǒng)計 對指定時間段內(nèi)的藥品銷售進(jìn)行查 詢 統(tǒng)計以及利潤查詢 統(tǒng)計等 能幫顧客查詢藥品信息 能按品名 生產(chǎn)廠家 藥品類別 存貨量進(jì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)以進(jìn)貨 存儲 銷售為主要業(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)廠家 藥品類別 存貨量進(jìn)行查詢 2 2 數(shù)據(jù)需求數(shù)據(jù)需求 經(jīng)過對學(xué)校附近的藥店的調(diào)研以及在網(wǎng)上查找的資料 藥店藥品管理系統(tǒng)的 處理對象主要包括 藥品信息 供應(yīng)商信息 顧客信息 藥品銷售信息 藥品存 儲信息等幾個方面 根據(jù)市場需求需要的數(shù)據(jù)組成如下需要的數(shù)據(jù)有操作員 會 員 藥品 訂單 廠家 進(jìn)貨單這些實體的組成數(shù)據(jù)有 操作人員需要包括 賬 號 密碼 姓名 聯(lián)系電話 郵箱 地址 會員表 賬號 姓名 年齡 聯(lián)系電 話 郵箱 地址 藥品信息中含有 藥品 ID 藥品名 類別 生產(chǎn)日期 有效 期 進(jìn)價 售價 生產(chǎn)廠家 訂單詳情中含有的有 訂單編號 藥品名 購買數(shù) 量 售價 購買人員 銷售日期 廠家信息包括 廠家編號 廠家名 電話 地 址 進(jìn)藥表 藥品 ID 操作員 進(jìn)藥日期 進(jìn)藥數(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)鍵 它通過對用戶需求進(jì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)期有效期 進(jì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)日期 有效期 進(jìn)價 售價 生產(chǎn)廠家 訂單詳情 訂單編號 藥品名 購買數(shù)量 售價 購買人員 銷售日期 操 作員姓名 廠家 廠家編號 廠家名 電話 地址 進(jìn)藥 藥品 ID 操作員姓名 進(jìn)藥日期 進(jìn)藥數(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)進(jìn)行評價 評價的重點是時間和空間效率 由于本次課程設(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ā)器需要達(dá)到的功能為在庫存 表中更新數(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ù)名稱和藥品類型進(jìn)行搜索單擊要入庫的藥品會在下 面文本框中顯示出來防止藥品入庫錯誤 圖6 3 2 增加藥品界面如圖6 4 能夠進(jìn)行藥品類型輸入 增加藥品類型擴(kuò)充藥品庫 圖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 進(jìn)行利潤查詢?nèi)鐖D 6 7 如果是匿名用戶購買就顯示為匿名 能夠根據(jù) 銷售中的出售時間來進(jìn)行規(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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 語文教育課題:《詩歌意境中的生命哲學(xué)教學(xué)案》
- 科技體驗館項目可行性研究報告
- 現(xiàn)代物流管理專業(yè)能力測試題
- 正式離職與就業(yè)解除證明書(7篇)
- 醫(yī)學(xué)影像學(xué)診斷技術(shù)知識點考點
- 公眾參與與無障礙環(huán)境提升的互動機(jī)制
- 電子商務(wù)物流管理與運營知識題庫
- 科技行業(yè)人才信息統(tǒng)計表
- 生態(tài)產(chǎn)品價值提升的關(guān)鍵技術(shù)與創(chuàng)新路徑
- 人力資源行業(yè)招聘與培訓(xùn)成果證明(8篇)
- 2023-2024學(xué)年遼寧省沈陽市皇姑區(qū)七年級(下)期末數(shù)學(xué)試卷(含答案)
- 釀酒機(jī)械與設(shè)備智慧樹知到期末考試答案章節(jié)答案2024年齊魯工業(yè)大學(xué)
- 兒童保健門診規(guī)范化建設(shè)標(biāo)準(zhǔn)
- 《庖丁解牛》省公開課金獎全國賽課一等獎微課獲獎?wù)n件
- JBT 11699-2013 高處作業(yè)吊籃安裝、拆卸、使用技術(shù)規(guī)程
- 24春國家開放大學(xué)《離散數(shù)學(xué)》大作業(yè)參考答案
- 健康保險合同
- 2023-2024年天原杯全國初中學(xué)生化學(xué)競賽復(fù)賽試題(含答案)
- 牛頓-拉夫遜潮流計算的程序設(shè)計
- 工藝工程師職業(yè)生涯規(guī)劃及目標(biāo)
- 市政工程施工安全臺帳范本12本(含內(nèi)容)
評論
0/150
提交評論