收藏 分销(赏)

数据库专业课程设计方案报告(2).doc

上传人:a199****6536 文档编号:2682815 上传时间:2024-06-04 格式:DOC 页数:26 大小:343.04KB
下载 相关 举报
数据库专业课程设计方案报告(2).doc_第1页
第1页 / 共26页
数据库专业课程设计方案报告(2).doc_第2页
第2页 / 共26页
数据库专业课程设计方案报告(2).doc_第3页
第3页 / 共26页
数据库专业课程设计方案报告(2).doc_第4页
第4页 / 共26页
数据库专业课程设计方案报告(2).doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、洛 阳 理 工 学 院课 程 设 计 报 告 课程名称 数据库课程设计 设计题目 药店管理系统 专 业 计算机科学与技术 班 级 学 号 姓 名 完毕日期 .12.30 课 程 设 计 任 务 书设计题目: 药店管理系统 设计内容与规定:设计内容:设计实现药店管理系统。可以实现药物库存管理、销售信息管理和查询功能:库存管理:涉及药物入库、出库管理,药物库存报警,药物有效期管理(过期报警)。销售管理:依照实际销售自动生成销售单据。如果是会员,则药物价格按95折计算。查询及记录功能:对指定期间段内出/入库进行查询/记录,对药物有效期进行查询/记录,对药物过期进行查询/记录,对指定期间段内药物销售进

2、行查询/记录以及利润查询/记录等。能帮顾客查询药物信息,能按品名、生产厂家、药物类别、存货量进行查询。设计规定:1.完毕数据库概念构造设计、逻辑构造设计、物理构造设计;2.创立数据库,完毕表、存储过程、触发器等数据库对象设计;3.用JAVA语言,完毕信息系统某些程序界面设计与调试运营。 指引教师: 年 12 月 24 日课 程 设 计 评 语 成绩: 指引教师:_ 年 1 月 3日目录1概述11.1本设计背景和意义11.2采用数据开发工具及应用开发工具12需求分析12.1功能需求12.2数据需求13概念构造设计24逻辑构造设计24.1建立关系模式34.2关系模式规范化解决35物理构造设计35.

3、1建立数据库35.2数据表创立35.2存储过程创立65.3数据触发器创立116 JAVA对数据库系统实现126.1登录界面及系统主界面126.2库存管理136.3销售管理146.4信息查询157设计总结17附录18 1概述1.1本设计背景和意义理解到某些药店由于规模较小没有专业药店管理系统,本设计可以适应于规模较小药店。通过运用数据库库技术,不但可以使药店管理更加以便,并且还能提高数据对的性。该药店管理系统以进货、存储、销售为重要业务,分别实现其她详细功能。1.2采用数据开发工具及应用开发工具本设计采用数据开发工具为SQL Server ,应用开发工具为Eclipse 2需求分析2.1功能需求

4、药店管理系统可以实现药物库存、销售信息管理和查询功能,依照实际销售自动生成销售单据。能帮顾客查询药物信息,能按品名、生产厂家、药物类别、存货量进行查询。2.2数据需求通过对学校附近药店调研以及在网上查找资料,药店药物管理系统解决对象重要涉及:药物信息、供应商信息、顾客信息、药物销售信息、药物存储信息等几种方面。依照市场需求需要数据构成如下需要数据有操作员、会员、药物、订单、厂家、进货单这些实体构成数据有,操作人员需要涉及:账号、密码、姓名、联系电话、邮箱、地址;会员表:账号、姓名、年龄、联系电话、邮箱、地址;药物信息中具有:药物ID、药物名、类别、生产日期、有效期、进价、售价、生产厂家;订单详

5、情中具有有:订单编号、药物名、购买数量、售价、购买人员、销售日期;厂家信息涉及:厂家编号、厂家名、电话、地址;进药表、药物ID、操作员、进药日期、进药数量3概念构造设计将需求分析阶段得到顾客需求抽象为信息构造即概念模型过程就是概念构造设计,它是整个数据库设计核心,它通过对顾客需求进行综合、归纳、抽象,形成一种独立于详细DBMS概念模型。依照需求分析,在该系统中存在如下实体集:药物信息实体集、顾客信息实体集、厂家信息实体集、销售信息实体集等等。存储N仓库N1年龄姓名账号电话邮箱编号品名数量售价买家日期账号密码姓名电话邮箱地址药物操作员订单会员提交参照解决厂家生产11厂名类别ID电话地址名称编号编

6、号数量生产期有效期进价售价批次ID依照需求做出E-R图如下图2-1N1N管理姓名N1NN总体E-R图2-3-14逻辑构造设计4.1建立关系模式操作人员(账号、密码、姓名、联系电话、邮箱、地址)会员(账号、姓名、年龄、联系电话、邮箱、地址)药物(药物ID、药物名称、类别、生产厂家编号)仓库(批次ID、药物ID、药物名、类别、生产日期、有效期、进价、售价、生产厂家)订单详情(订单编号、药物名、购买数量、售价、购买人员、销售日期、操作员姓名)厂家(厂家编号、厂家名、电话、地址)进药(药物ID、操作员姓名、进药日期、进药数量)4.2关系模式规范化解决依照函数依赖关系,分析得每一种关系模式均满足3NF。

7、5物理构造设计5.1建立数据库物理设计时为逻辑数据模型选用一种最适当应用环境物理构造(涉及存储构造和存取办法),数据库物理构造普通分为两步: (1)拟定数据库物理构造,在关系数据库中重要指存取办法和存储构造; (2)对物理构造进行评价,评价重点是时间和空间效率。由于本次课程设计数据库数据量不大,再加上数据库实行软件会自动建立某些索引,因此这里没有必要特别建立索引。需要创立一种数据库文献,命名为DrugControl创立数据库语句为create database DrugControl 5.2数据表创立(1)创立Drug表,如图5-1create table Drug(-品名Dno varcha

8、r(10) primary key,-药物编号Dname varchar(20) not null,-药物名Dclass varchar(20),-药物类别Sname varchar(20)-生产厂家)图5-1(2)创立供应商Suppliter表如图5-2create table Supplier(-供应商Sno varchar(10) primary key,Sname varchar(20) not null,Sphone char(11),Semail varchar(20),Saddress varchar(50)图 5-2(3)创立管理员表Opert如图5-3create table

9、 Opert(-管理员Mno varchar(10) primary key,Mpassw varchar(20),Mname varchar(20) not nullMphone char(11),Memail varchar(20),Maddress varchar(50)图5-3(4)创立会员表Customer如图5-4create table Customer(-会员Cno varchar(10) primary key,Cname varchar(20) not null,Cage int check(Cage0 or Cage is null),Cphone char(11),Ce

10、mail varchar(20),Caddress varchar(50) 图5-4(5)创立库存表Dugstore如图5-5create table Drugstore(-库存Lno varchar(10) primary key,-入库编号Dno varchar(10) ,-药物编号Dname varchar(20) not null,-药物名Dclass varchar(20),-药物类别Pquantity int,-药物数量Idate date,-入库时间out_date date,Dbidd float,Dprice float,Sname varchar(20),-厂家名Mname

11、 varchar(20),-操作员姓名foreign key(Dno) references Drug(Dno),)图 5-5(6)创立出售表Sale如图5-6create table Sale(-出售Slno varchar(10),Dno varchar(10),Cno varchar(10),Ddprice float,Mquantity int,-销售数量Amoney float,Idate date,-销售日期foreign key(Dno) references Drug(Dno),)图5-6(7)创立缺货单A如图5-7create table Absence(-缺货单Lno va

12、rchar(10) primary key,Dno varchar(10),Pquantity int,Pdade date,Astate varchar(10),foreign key(Dno) references Drug(Dno)图 5-7(8)数据视图创立依照需求仅需要创立一种视图就可以完毕所需要功能,需要创立视图为“即将过期药物”如图5-8create view 即将过期药物单(Lno,Dname,Dclass,Pquantity,lessdate)asselect Lno ,Dname,Dclass,Pquantity,DATEDIFF(day,GETDATE(),out_dat

13、e)from Drugstore图5-85.2存储过程创立(1)创立增长会员存储过程*增长会员*/create procedure 增长会员 Cname varchar(20),Cage int,Cphone char(11),Ccemail varchar(20),Caddress varchar(50)asdeclare i int,n varchar(10)select i=max(cast(substring(Cno,2,len(Cno)-1)as int)+1 from Customer -获取最大值+1select n=substring(C0000,1,5-len(i)+cast

14、(i as varchar(5)-转换成编号insert into Customer values(n,Cname,Cage,Cphone,Ccemail,Caddress)验证存储过程如图5-9exec 增长会员 没,12,111111,理工图5-9(2)创立增长操作人员存储过程/*增长操作人员*/create procedure 增长操作员 Mpassw varchar(20),Mname varchar(20),Mmphone char(11),Mmemail varchar(20),Mmaddress varchar(50)asdeclare i int,n varchar(10)se

15、lect i=max(cast(substring(Mno,2,len(Mno)-1)as int)+1 from Opert -获取最大值+1select n=substring(C0000,1,5-len(i)+cast(i as varchar(5)-转换成编号insert into Opert values(n,Mpassw,Mname,Mmphone,Mmemail,Mmaddress)验证存储过程如图5-10exec 增长操作员 1,感冒,11111111,洛阳理工 图5-10(3)创立增长品名存储过程/*增长品名*/create procedure 增长品名Dname varch

16、ar(20),Dclass varchar(20),Sname varchar(20)asdeclare i int,n varchar(10)select i=max(cast(substring(Dno,2,len(Dno)-1)as int)+1 from Drug -获取最大值+1select n=substring(D0000,1,5-len(i)+cast(i as varchar(5)-转换成编号insert into Drug values(n,Dname,Dclass,Sname)验证存储过程如图5-11exec 增长品名 感冒灵颗粒,感冒用药类,蜀川图5-11(4)创立增长

17、入库存储过程/*增长入库*/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)asdeclare i int,n varchar(10)select i=max(cast(substring(Lno,2,len(Lno)-1)as int)+1 from Drugstore -获取最大值+1select n=su

18、bstring(D0000,1,5-len(i)+cast(i as varchar(5)-转换成编号insert into Drugstore values(n,Ddno,Dname,Dclass,Pquantity,GETDATE(),Out_date,Dbidd,Dprice,Sname,Mname)验证存储过程如图5-12exec 增长药物 D0002,感冒灵颗粒,感冒用药类,5,蜀川,-11-11,1,2,ll图5-12(5)创立增长供应商存储过程/*增长供应商*/create procedure 增长供应商Sname varchar(20),Sphone char(12),Sadd

19、ress varchar(50),Semail varchar(20)asdeclare i int,n varchar(10)select i=max(cast(substring(Sno,2,len(Sno)-1)as int)+1 from Supplier -获取最大值+1select n=substring(S0000,1,5-len(i)+cast(i as varchar(5)-转换成编号insert into Supplier values(n,Sname,Sphone,Semail,Saddress)验证存储过程如图5-13exec 增长供应商 111,222,洛阳理工,图5

20、-13(6)创立增长销售存储过程/*增长销售单*/create procedure 增长订单 Dno varchar(20),Cno varchar(20),Ddprice float,Mquantity intasdeclare i int,n varchar(10)select i=max(cast(substring(Slno,2,len(Slno)-1)as int)+1 from Sale -获取最大值+1select n=substring(M0000,1,5-len(i)+cast(i as varchar(5)-转换成编号insert into Sale values(n,Dn

21、o,Cno,Ddprice,Mquantity,getdate()update Drugstoreset Pquantity=Pquantity-Mquantitywhere Lno=Dno验证存储过程如图5-14exec 增长订单 M0003,D0002,C0001,22,15,440图5-14(7)创立缺货单存储过程/*更新缺货单*/create procedure 更新缺货单asdeclare Dno varchar(5),Pquantity int,i int,n varchar(5),Astate varchar(10),con intdeclare c cursor for sel

22、ect Dno,sum(Pquantity) from Drugstore group by Dnoopen cfetch c into Dno,Pquantitywhile(FETCH_STATUS=0)beginif(Pquantity19)begindeclare c3 cursor for select count(Astate),Astate from Absence group by Dno,Astateopen c3fetch c3 into con,Astatewhile(FETCH_STATUS=0)beginif(Astate=未解决 and con=1)beginupda

23、te Absence set Astate=已解决 where Dno=Dnoendfetch c3 into con,Astateendclose c3deallocate c3endfetch c into Dno,Pquantityendclose cdeallocate c5.3数据触发器创立依照数据规定在出售过程中会浮现库存局限性即需要创立触发器需要达到功能为在库存表中更新数据时执行存储过程缺货单create trigger Drug_short on Drugstoreafter updateasbeginexec 更新缺货单;end;验证触发器如图5-14update Drugs

24、tore set Pquantity=1 where Dno=D0002如图5-15原缺货单图5-15执行过后6 Java对数据库系统实现16.1登录界面及系统主界面(1)药店登录界面如图6-1图6-1(2)药店主页面如图6-2图6-26.2库存管理(1)入库管理界面如图6-3可以依照名称和药物类型进行搜索单击要入库药物会在下面文本框中显示出来防止药物入库错误图6-3(2)增长药物界面如图6-4,可以进行药物类型输入,增长药物类型扩充药物库图6-4(3)修改药物信息页面如图6-5,可以对药物信息更改,用来修改和删除药物信息图6-56.3销售管理 销售管理页面如图6-6,用来出售药物,可以实时获

25、取购买数量和会员ID中输入信息,如果输入对的会员ID后并且在数据库中检测到有这个会员信息则会自动在背面会员由否改为是,计算总价时候打折,在提交订单后库中数量减少并且插入销售表。图6-66.4信息查询(1)进行利润查询如图6-7,如果是匿名顾客购买就显示为匿名,可以依照销售中出售时间来进行规定期间内利润查询并且可以显示出来每笔订单和总价图6-7(2)缺货单查询如图6-8,如果在售卖中数量低于20,就会自动在缺货单中显示出来,并且在添加药物后自动将状态改成已解决,缺货详情中不再浮现,除非售卖后数量再次低于20 图6-8 (3)过期药物显示如图6-9,并且支持销毁已过期药物。图6-97设计总结通过这

26、次课设,我对数据库理解有了深一步结识,从需求分析到数据库运营和维护,每一某些都是不可省掉,都需要咱们认真地思考、设计,从中我更加深刻理解了关系模式、E-R图等内容。这次课程设计咱们使用语言是SQL SERVER ,让我再次理解并掌握了SQL SERVER 功能及存储过程,也学习Java软件操作,有两手准备。实习中,遇到问题后才发现自己知识很有限,才发现基本重要性,让我又拿起课本认认真真地学习了一遍。生活也需要咱们一步一步规划,认认真真地做好每一件事,解决好遇到每一种问题,发现自己局限性,并加以修正。这次课程设计可以说看起来比较容易,真做起来却困难重重,深刻体会到要做好一种项目,真不容易!在此后

27、学习中咱们会加强理论实践结合,通过不断练习、摸索来弥补自己局限性。不能由于困难就失去信心!人如果没有自信,没有目的,就不也许把事情做好!相信可以,就会可以,一定可以!附录参照文献1 郑阿奇SQL Server实用教程(第2版)M北京:电子工业出版社, 2 王珊,萨师煊数据库系统概论(第四版)M北京:高等教诲出版社,3.张桂珠 刘丽 陈爱国 Java面向对象程序设计(第2版)北京邮电大学出版社4毕广吉.Java程序设计实例教程M. 北京:冶金工业出版社,5.王保罗.Java面向对象程序设计M. 北京:清华大学出版社,6.高林,周海燕.Jsp网上书店系统与案例分析M. 北京:人民邮电出版社,7.刘腾红,孙细明.信息系统分析与设计M. 北京:科学出版社,8.林邦杰,彻底研究java.北京:电子工业出版社,

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服