数据库课程设计报告_第1页
数据库课程设计报告_第2页
数据库课程设计报告_第3页
数据库课程设计报告_第4页
数据库课程设计报告_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库课程设计报告 课 程 设 计 报 告课程设计名称: 数据库原理与应用 系 部: 二 系 学生姓名: 黄阳阳 班 级: 10信息与计算科学 学 号: 20100202128 成 绩: 指导教师: 陈林 开课时间: 2012-2013 学年 1 学期一设计题目: *二主要内容:*三具体要求1. 课程设计的内容独立自主完成,课程设计报告内容完整、格式规范、排版整洁美观;2. 后台数据库采用MS SQL SERVER 2005,前台界面语言不限,编写的程序代码,须有较详细的注释说明;四进度安排课程设计安排:16周星期一 讲解课程设计的内容,安排每一天的具体任务,分配并熟悉题目;星期二 需求分析:

2、给出系统的功能需求、性能需求,并绘制DFD和DD;星期三 概念结构设计:绘制实体属性图(可选),局部ER图和全局ER图;星期四 逻辑结构设计:转换、优化;星期五 逻辑结构设计:外模式设计17周星期一 物理结构设计及数据库实施;星期二 应用程序编制调试、整理课程设计报告;星期三 应用程序编制调试、整理课程设计报告,并检查;星期四 根据反馈结果修改课程设计报告;星期五 课程设计答辩,交材料;上交的材料:课程设计的电子稿、打印稿、源码(SQL代码和程序代码)五成绩评定考核方法:现场验收(占50%),课程设计报告(占50%)。考核内容:学习态度(出勤情况,平时表现等)、方案合理性、各阶段的图表与程序编

3、制质量、设计报告质量。成绩评定:优,良,中,及格,不及格。特别说明:(1)如发现抄袭,按照不及格处理。 (2)材料不齐的,考核等级降一级。电子稿件以压缩文件的形式上交,压缩命名为:11位学号+姓名正文撰写包含的内容:1、 需求分析2、 概念结构设计3、 逻辑结构设计4、 物理结构设计5、 数据库实施及应用程序编制6、 心得体会7、 参考资料正文:题目:药店药品管理系统(25-28号)系统功能的基本要求: 供货商为药店供药; 药店对药品进行管理,并且在库存数量小于10时进行药品缺货预警,在药品保质期到期前6个月进行药品到期预警。 用户可以用现金也可以刷医保卡进行购药;医保卡购药只能用于购买那些允

4、许刷卡消费的药品。 药店可以统计每个月的收支情况,购买了多少哪些种类哪些药品,卖出了哪些种类的哪些药品,其中哪些是医保卡刷卡支付的。1、 需求分析1.1功能分析1、 管理员进入系统能够看到药品的销售记录、进货记录。2、 销售记录中要能体现出药品的销售情况,并且能显示购药的人是否是VIP以及是否刷卡。3、 系统能在每种药品的数量小于10的时候自动报警,并且在药品的保质期还有不到6个月的时候自动反馈给管理员。1.2数据流图图标:数据原点或结点处理过程存储数据进货当天供货商管理员药品药库货架消费者进货判断保质期售货订购保质期大于一年入库每次登陆系统进行一次保质期大于2个月小于1年退回不合格药品定制订

5、购单发送订购单保存进货记录保质期小于六个月判断药品剩余数量有药品的数量小于10保存销售记录每次售货完成后进行一次刚购进的药品保质期小于两个月数据流图 1 数据流图1.3数据字典1、数据项14序号:1名称:ypno含义:药品编号值域:char10序号:2名称:ypname含义:药品名称值域:char50序号:3名称:scdate含义:生产日期值域:datetime序号:4名称:bzq含义:保质期值域:int序号:5名称:mcprice含义:卖出价格值域:float序号:6名称:sfsk含义:是否支持刷卡值域:bit序号:7名称:class含义:类别值域:char6序号:8名称:ghsno含义:供

6、货商编号值域:char10序号:9名称:ghsname含义:供货商名称值域:char50序号:10名称:ghsadd含义:供货商地址值域:char100序号:11名称:xfzno含义:消费者编号值域:char10序号:12名称:xfzname含义:消费者姓名值域:char10序号:13名称:VIP含义:是否是VIP值域:bit序号:14名称:jhnum含义:进货数量值域:int序号:15名称:jhprice含义:进货价格值域:float序号:16名称:mcnum含义:卖出数量值域:int序号:17名称:mcdate含义:卖出日期值域:datetime序号:18名称:mcprice含义:卖出价格

7、值域:float序号:19名称:sk含义:是否刷卡值域:bit2、数据结构序号:1名称:yp含义:药品组成:ypno,ypname,scdate,bzq,mcprice,zcsk,class序号:2名称:ghs含义:供货商组成:ghsno,ghsname,ghsadd序号:3名称:xfz含义:消费者组成:xfzno,xfzname,VIP序号:4名称:jh含义:进货组成:ypno,ghsno,jhnum,jhprice序号:5名称:sh含义:售货组成:ypno,xfzno,mcprice,mcnum,mcdate,sk2、 概念结构设计2.1实体图根据第一章中的数据字典可以得到以下的实体属性图

8、:药品名称药品药品价格支持刷卡药品类别生产日期药品编号保质期图 2 药品实体图供货商供货商号供货商地址供货商名图 3 供货商实体图消费者消费者号VIP消费者名图 4 消费者实体图2.2全局E-R图根据需求分析和数据字典,可以得到以下的E-R图:药品消费者供货商进货售货进货数量是否刷卡nnmm进货价格售货数量售出日期图 5 全局E-R图3、 逻辑结构设计3.1 关系模式根据第二章的E-R图,我得到了以下的关系模式:药品:(药品编号,药品名称,生产日期,保质期,卖出价格,是否支持刷卡,药品类别)供货商:(供货商编号,供货商名称,供货商地址)消费者:(消费者编号,消费者名称,VIP)进货:(供货商号

9、,药品编号,进货数量,进货价格)售货:(药品编号,消费者编号,卖出数量,卖出日期,是否刷卡)3.2 关系模式优化由以上的关系模式可以知道每一个关系模式中的每一个属性都是独立存在的,因此都属于1NF;每一个关系模式中的非主属性都完全依赖于主码,因此都属于2NF;每一个关系模式中的非主属性都不传递依赖于主码,因此都属于3NF。同时,每一个关系模式的修改和查询都没不太复杂,因此完全符合数据库的要求。3.3 数据项定义表 1 消费者名称定义别名是否可为空值域xfznochar10消费者编号否xfznamechar10消费者姓名否VIPbit是否是VIP否0,1表 2 药品名称定义别名是否可为空值域yp

10、nochar10药品编号否ypnamechar50药品名称否scdatedatetime生产日期否bzqIint保质期否mcpricefloat药品价格否zcskbit是否支持刷卡否0,1classchar6药品类别否表 3 供货商名称定义别名是否可为空值域ghsnochar10供货商编号否ghsnamechar50供货商名称否ghsaddchar100供货商地址否表 4 进货名称定义别名是否可为空值域ypnochar10药品编号否ghsnochar10供货商编号否jhnumint进药数量否jhpricefloat进药价格否表 5 售货名称定义别名是否可为空值域ypno char10药品编号否

11、xfznochar10消费者编号否mcnumint卖出数量否mcdatedatetime卖出日期否skbit是否刷卡否0,14、 物理结构设计4.1 数据库实施环境运行环境:虚拟机VMwara 8.04下的windows xp系统。运行软件:MS SQL SERVER20054.2 数据的存取对于数据的存取,在这里采用了比较常用的索引与视图。对药品表中的是否支持刷卡建立索引,以便在售药的时候对是否可以刷卡进行判断。对药品表中的药品类别建立索引,方便在查询的时候可以显示卖出药品的类别。对售货表中的是否刷卡建立索引,方便在查询销售情况的时候查看那些药是用刷卡的方式被消费者买去的。对消费者表中的VI

12、P建立索引,判断是否需要优惠。建立进货与售货表的视图,这样可以更容易查询管理员对收入情况的查询,也更容易建立财务报表。5、 数据库实施及应用程序编制5.1 创建数据库打开MS SQL SERVER2005,用超管的身份进入,新建查询再输入:create database 药店药品管理系统5.2 创建表药品表:create table 药品(ypno char(10) primary key,ypname char(50) not null,scdate datetime not null,bzq int not null,mcprice float not null,zcsk bit not

13、null,class char(6) not null)供货商表:create table 供货商(ghsno char(10) primary key,ghsname char(50) not null,ghsadd char(100) not null)消费者表:create table 消费者(xfzno char(10) primary key,xfzname char(10) not null,VIP bit not null)进货表:create table 进货(ypno char(10) not null,ghsno char(10) not null,jhnum int no

14、t null,jhprice float not null,primary key(ypno,ghsno)售货表:create table 售货(ypno char(10) not null,xfzno char(10) not null,mcnum int not null,mcdate datetime not null,sk bit not null,primary key(ypno,xfzno)5.3 索引与视图1、索引:支持刷卡:create index search_zcskon 药品(zcsk)类别:create index search_classon 药品(class)是否刷

15、卡:create index search_skon 售货(sk)VIP:create index search_VIPon 消费者(VIP)2、视图:售货统计:create view mccountasselect distinct ypno,sum(mcnum) as mcznum,VIPfrom 售货,消费者where 售货.xfzno=消费者.xfznogroup by VIP,ypno库存:create view kucunasselect 进货.ypno,jhnum,sum(mcznum) as mcsfrom 进货,mccountwhere 进货.ypno=mccount.ypn

16、ogroup by 进货.ypno,jhnum 5.4 功能实现1、库存信息(视图查询)select ypno,(jhnum-mcznum) as synumfrom kucun2、日常销售情况(索引查询)明细:select distinct 售货.ypno,xfzno,mcnum,mcprice,sk,mcdatefrom 售货,药品where 售货.ypno=药品.ypno汇总:select 药品.ypno,sum(mcnum*mcprice) as shourufrom 药品,售货where 药品.ypno=售货.ypnogroup by 药品.ypno刷卡购买:select disti

17、nct ypno,mcnum,mcdatefrom 售货where sk=true按药品类别:select class,sum(mcnum) as mcznumfrom 药品,售货where 药品.ypno=售货.ypnogroup by class3、财务报表:select 药品.ypno,jhprice,进货.jhnum,sum(进货.jhnum*jhprice) as zhichu,mcprice,mcs,sum(mcs*mcprice) as shourufrom 进货,售货,药品,kucunwhere 进货.ypno=售货.ypno and 售货.ypno=药品.ypno and 药

18、品.ypno=kucun.ypnogroup by 药品.ypno,进货.jhprice,进货.jhnum,药品.mcprice,kucun.mcs4保质期剩余判断:select ypno,-datediff(d,dateadd(d,bzq,scdate),getdate() as sydatefrom 药品where -datediff(d,dateadd(d,bzq,scdate),getdate()1805.5 结果演示因为没有图形界面,因此上面的语句只能按顺序流程用MS SQL SERVER2005运行。基本表中的数据是采用图形输入的,作为测试系统功能是否能实现的,没有实际意义。1、基本表药品表:图 6 药品表供货商表:图 7 供货商表消费者表:图 8 消费者表进货表:图 9 进货表售货表:图 10 售货表2、结果1、库存图 11 库存显示2、销售情况明细:图 12 销售明细汇总:图 13 收入汇总刷卡购药:图 14 药品由刷卡方式卖出的查询表按药品类别:图 15 药品种类的卖出情况3、财务报表图 16 财务报表4、保质期剩余时间:图 17 保质期剩余时间不足的药品及剩余天数6、 心得体会我这次做的只是一款简单的数据库系统,而且还没有可视化界面操作。这个系统虽然简单,但依旧能让我学到很多。进过这一次的课程设计,让我了解到了需求分析对一个数据库设计的重要性,在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论