数据库药品进存销信息管理系统(共23页).doc

上传人:飞****2 文档编号:15145738 上传时间:2022-05-11 格式:DOC 页数:23 大小:800.50KB
返回 下载 相关 举报
数据库药品进存销信息管理系统(共23页).doc_第1页
第1页 / 共23页
数据库药品进存销信息管理系统(共23页).doc_第2页
第2页 / 共23页
点击查看更多>>
资源描述

《数据库药品进存销信息管理系统(共23页).doc》由会员分享,可在线阅读,更多相关《数据库药品进存销信息管理系统(共23页).doc(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上课程设计(大作业)报告课程名称: 数据库原理与技术 设计题目: 药品进存销信息管理系统 院 系: 信息技术学院 班 级: 2010级计算机应用技术班 设 计 者: 杨浩超 学 号: 2 指导教师: 邱 莎 设计时间: 2012-6-20 信息技术学院昆明学院课程设计(大作业)任务书姓 名:杨浩超院(系):信息技术学院专 业:计算机应用技术学 号:2任务起止日期:2012-6-182012-6-21课程设计题目:药品进存销信息管理系统课程设计要求:1 根据初始信息,完成该系统的后台数据库设,设计要求严格按数据库设计步骤完成。必要时,可以组织调研,扩大或完善设计所需的信息

2、。2 项目主管根据要求制定出合理的后台数据库设计项目计划。3 技术主管根据项目主管下达的设计任务和基本信息,制定数据库设计任务实施的技术方案。4 设计数据库时要求使用数据库对象,对象的设计要实用。5 为所设计的数据库制定适当的安全管理方案。6 程序员接受技术主管下达的设计任务,按要求按时完成。工作计划及安排:总的分为四个阶段第一阶段:对数据库的创建和相关数据的添加 时间是6月18日星期一,具体的情况如下: 数据库的创建主要由王长尧负责,数据的收集由杨帮荣、杨浩超、周建成完成,数据的添加由马年顺完成。完成情况达到了预期的效果,成功的将数据加到数据库中。由严文娟设计任务实施的技术方案。如:数据流图

3、,概念模型,逻辑模型等。第二阶段:对数据库相关视图、触发器、函数和存储过程的创建以及前台的操作窗体的创建 时间是6月19日星期二,具体情况如下: 视图、函数、触发器的创建有严文娟完成,存储过程由周建成、杨浩超、杨帮荣完成,前天的操作窗体由马年顺和王长尧完成。第三阶段:对创建的管理系统进行调试、运行 时间是6月20日上午,具体情况如下: 这一部分的主要负责是马年顺,具体的调试过程有马年顺来完成,其他成员负责解决调试中出现的问题。第四阶段:对实验报告的填写和上交 时间是6月21日星期三,具体情况如下: 这一阶段由王长尧负责监督完成,各成员负责将自己的实验报告填写完整,并统一上交。指导教师签字 年

4、月 日 课程设计(大作业)成绩学号:2 姓名:杨浩超 指导教师:邱莎课程设计题目:药品进存销信息管理系统总结:实训课是在学习与探索中度过的,短暂的一星期实训是结束了,其中让我们学到了许多知识,虽然还有许多疑问,但最终是在老师和同学的帮助下完成。但我知道我收获的远比想象中的要多,同时,通过此次实训,我了解到了想学好数据库这门课程,实践是必须的,因为数据库是一门操作性能很强的课程。在实训中,我遇到了很多的难题,但也就是因为这样,我又一遍遍的去寻找解决的方式和途径,使这些难题得以顺利解决,这个累积的过程,也就成了我实训期间宝贵的经验与财富,相信对我以后的生活也会有很大的帮助。经过这次实训,我相信,在

5、以后的生活中,不管遇到什么难题,只要一直保持这种心态与斗志,我的人生一定会有更大的收获。指导教师评语:成绩:填表时间:指导教师签名:课程设计(大作业)报告一、 题目分析 如何利用现代信息技术使企业拥有快速、高效的市场反映能力和高度的效率,已是医药经营企业,特别是医药连锁经营企业特别关心的问题。尽快建立一个功能齐备的药品进、出库管理系统,完善现代企业的信息化管理机制,已成为医药企业生存发展的当务之急。通过开发这个药品管理系统,使药品进销存管理工作系统化,规范化,自动化,从而达到提高管理效率的目的。这个药品管理系统主要涉及医院药库的药品进、销、存等业务,以及入库、出库和库存管理,药品管理主要管理药

6、库中所有药品的进出和内部统计计算,为药品会计提供基础数据,以及包括有效期的报警和下限报警。本系统开发设计思想就是实现药品管理的数字化。二、 总体设计1.设计思想数据库表以二维表的形式存储在硬盘中,可以方便的用select语句进行组合查询,进而用视图的形式显示所要信息。本系统分五个模块,需要用数据库建立五个表格,还有分别对药品信息,员工信息,客户信息,出库入库信息,销售信息进行单独管理。1.1药品信息表设计该表是存储药品信息的表,主要用来存储药品的药品编号、药品名称、生产厂家、生产日期、保质期、用途、价格、数量、经手人1编号(药品编号为主键)1.2员工信息表设计该表存放了员工的基本信息,包括汽车

7、的员工编号、姓名、性别、年龄、学历、职务表21.3出库入库信息表设计该表主要存储了出库入库的信息,包括当前库村药品流水号,药品、进货时间、数量、折扣、经手人等信息表31.4客户信息表设计该表主要存储了客户的信息,包括客户编号、姓名、性别、出生日期、联系电话等信息表41.5销售信息表设计该表主要存储了销售的信息,包括流水号、客户、购买时间、数量、折扣、经手人等基本信息表52.E-R图员工进货药品销售客户编号姓名性别职务学历年龄流水号药品经手人折扣数量进货时间药品名称员工编号客户编号规格用途进货价保质期销售价生产厂家流水号经手人购买时间客户药品数量编号联系电话姓名性别出生日期生产日期折扣三、 实验

8、器材Microsoft SQL Server 2005软件Microsoft Visual Basic 6.0 中文版软件四、 具体过程 一、时间是6月18日星期一,具体的情况如下: 小组开会讨论,分配给程序员查找数据和资料,编写创建数据库和表的代码,我的任务是进货和销售代码的编写,完成情况达到了预期的效果,成功的将数据加到数据库中。 二、时间是6月19日星期二,具体的情况如下: 用触发器和约束实现数据完整性保护,我主要负责视图的创建。一下是我采用的代码:CREATE VIEW dbo.进货视图ASSELECT dbo.进货.经手人, dbo.销售.经手人AS Expr1, dbo.进货.药品

9、, dbo.销售.药品AS Expr2, dbo.进货.进货时间, dbo.销售.购买时间, dbo.进货.数量, dbo.销售.数量AS Expr3, dbo.进货.折扣, dbo.销售.折扣AS Expr4FROM dbo.进货INNER JOIN dbo.销售ON dbo.进货.流水号= dbo.销售.流水号create view 客户视图asselect dbo.客户.姓名,dbo.客户.性别,dbo.客户.出生日期,dbo.客户.联系电话from dbo.客户inner join dbo.药品on dbo.客户.客户编号=dbo.药品.客户编号goCREATE VIEW dbo.员工

10、视图ASSELECT dbo.员工.姓名, dbo.员工.性别, dbo.员工.年龄, dbo.员工.学历, dbo.员工.职务, dbo.员工.员工编号FROM dbo.药品 INNER JOIN dbo.员工 ON dbo.药品.员工编号=dbo.员工.员工编号弄好后报给马年顺。 三、时间是6月20日上午,具体情况如下: 前台的搭建由王长尧实现,三名程序员把代码写好交给测试主管马年顺来测试,有错误的地方反馈给技术主管严文娟,由严文娟进行代码的修改。 四、时间是6月21日星期三,具体情况如下: 由王长尧负责监督完成,各成员负责将自己的实验报告填写完整,并统一上交。五、 程序代码5.1、创建y

11、aopin数据库的代码create database yaopinon(name=yaopin_data,filename=d:yaopin_data.mdf,size=10MB,maxsize=unlimited,filegrowth=10%)log on(name=student_log,filename=d:yaopin_log.ldf,size=10MB,maxsize=unlimited,filegrowth=10%)5.2、创建yaopin表的代码USE yaopinGOCREATE TABLE 客户(客户编号 char(4) CONSTRAINT pk_khbh PRIMARY

12、KEY,姓名 char(8) NOT NULL,性别 char(2) NOT NULL,出生日期 datetime NOT NULL,联系电话 char(20)GOCREATE TABLE 药品(编号 char(4) CONSTRAINT pk_ypbh PRIMARY KEY,药品名称 varchar(20) NOT NULL,生产厂家 varchar(50) NOT NULL,生产日期 datetime NOT NULL,保质期 varchar(10) NOT NULL,用途 varchar(40) NOT NULL,规格 varchar(40) NOT NULL, 进货价 varchar

13、(10) NOT NULL,销售价 varchar(10),员工编号 char(20),客户编号 char(20) )GOCREATE TABLE 员工(员工编号 char(12) CONSTRAINT pk_ygbh PRIMARY KEY,姓名 char(8) NOT NULL,性别 char(2) NOT NULL,年龄 char(10) NOT NULL,学历 varchar(20) NOT NULL,职务 varchar(20)goCREATE TABLE 进货(流水号 char(12) CONSTRAINT pk_jhlsh PRIMARY KEY,药品 char(20) NOT

14、NULL,进货时间 datetime NOT NULL,数量 char(9) NOT NULL,折扣 char(10) NOT NULL,经手人 char(10)GOCREATE TABLE 销售(流水号 char(12) CONSTRAINT pk_xslsh PRIMARY KEY,客户 char(20) NOT NULL,药品 char(20) NOT NULL,购买时间 datetime NOT NULL,数量 char(10) NOT NULL,折扣 char(10) NOT NULL,经手人 char(10)go5.3、添加数据代码表15.3.1、添加客户数据代码如下INSERT

15、客户 (客户编号,姓名,性别,出生日期,联系电话)VALUES (01,徐松,男,1966-4-1,) INSERT 客户 (客户编号,姓名,性别,出生日期,联系电话)VALUES (02,张远,男,1982-3-2,)INSERT 客户 (客户编号,姓名,性别,出生日期,联系电话)VALUES (03,王丽,女,1975-7-12,) INSERT 客户 (客户编号,姓名,性别,出生日期,联系电话)VALUES (04,刘儒风,男,1984-2-4,)INSERT 客户 (客户编号,姓名,性别,出生日期,联系电话)VALUES (05,李莲,女,1989-12-12,) 表25.3.2、添加

16、客户数据代码如下INSERT 药品 (编号,药品名称,生产厂家,生产日期,保质期,用途,规格,进货价,销售价,员工编号,客户编号)VALUES (001,优卡丹,江西铜鼓仁和制药有限公司,2012-6-15,3年,用于儿童伤风感冒,每袋装g,每盒袋,5.3元,6.5元,1,01) INSERT 药品 (编号,药品名称,生产厂家,生产日期,保质期,用途,规格,进货价,销售价,员工编号,客户编号)VALUES (002,双黄连口服液,哈药集团三精制药股份有限公司,2012-5-13,2年,清热解毒,用于风热感冒,每支装ml,每盒支,9.3元,10.5元,2,02)INSERT 药品 (编号,药品名

17、称,生产厂家,生产日期,保质期,用途,规格,进货价,销售价,员工编号,客户编号)VALUES (003,云南白药气雾剂,云南白药集团股份有限公司,2012-3-14,3年,活血散瘀,消肿止痛,每瓶.5cm*10cm,28.5元,30元,3,03) INSERT 药品 (编号,药品名称,生产厂家,生产日期,保质期,用途,规格,进货价,销售价,员工编号,客户编号)VALUES (004,小柴胡颗粒,广州白云山光华制药股份有限公司,2012-3-25,3年,解表散热,疏肝和胃,每袋装g,每盒袋,7.6元,9元,4,04)INSERT 药品(编号,药品名称,生产厂家,生产日期,保质期,用途,规格,进货

18、价,销售价,员工编号,客户编号)VALUES (005,感冒清热颗粒,北京同仁堂科技股份有限公司制药厂,2012-6-17,1年,用于风寒感冒,头痛发热,每袋装g,每盒袋,11.7元,13.4元,5,05)表35.3.3、添加员工数据代码如下INSERT 员工 (员工编号,姓名,性别,年龄,学历,职务)VALUES (1,王长尧,男,21,专科,总管) INSERT 员工 (员工编号,姓名,性别,年龄,学历,职务)VALUES (2,马年顺,男,22,专科,副总管)INSERT 员工 (员工编号,姓名,性别,年龄,学历,职务)VALUES (3,严文娟,女,20,专科,副总管) INSERT

19、员工 (员工编号,姓名,性别,年龄,学历,职务)VALUES (4,周建成,男,22,专科,职员)INSERT 员工 (员工编号,姓名,性别,年龄,学历,职务)VALUES (5,杨浩超,男,20,专科,职员) INSERT 员工 (员工编号,姓名,性别,年龄,学历,职务)VALUES (6,杨帮荣,男,21,专科,职员)表45.3.4、添加进货数据代码如下INSERT 进货 (流水号,药品,进货时间,数量,折扣,经手人)VALUES (01,优卡丹,2012.03.05,150,20%,王长尧) INSERT 进货 (流水号,药品,进货时间,数量,折扣,经手人)VALUES (02,双黄连口

20、服液,2012.03.15,50,20%,马年顺)INSERT 进货 (流水号,药品,进货时间,数量,折扣,经手人)VALUES (03,云南白药气雾剂,2012.03.05,120,15%,严文娟) INSERT 进货 (流水号,药品,进货时间,数量,折扣,经手人)VALUES (04,小柴胡颗粒,2012.03.05,210,18%,周建成)INSERT 进货 (流水号,药品,进货时间,数量,折扣,经手人)VALUES (05,感冒清热颗粒,2012.03.05,360,25%,杨浩超) 表55.3.5、添加销售数据代码如下INSERT 销售 (流水号,客户,药品,购买时间,数量,折扣,经

21、手人)VALUES (11,徐松,01,2012.03.10,112,20%,王长尧) INSERT 销售 (流水号,客户,药品,购买时间,数量,折扣,经手人)VALUES (21,张远,02,2012.03.10,42,20%,马连顺)INSERT 销售 (流水号,客户,药品,购买时间,数量,折扣,经手人)VALUES (31,王丽,03,2012.03.10,84,15%,严文娟) INSERT 销售 (流水号,客户,药品,购买时间,数量,折扣,经手人)VALUES (41,刘儒风,01,2012.03.10,156,18%,周建成) INSERT 销售 (流水号,客户,药品,购买时间,数

22、量,折扣,经手人)VALUES (51,李莲,01,2012.03.10,334,25%,杨浩超)5.4、触发器实现数据的完整性CREATE TRIGGER trig_i_进货ON 进货FOR INSERT AS Declare rownum int Declare pGoodName varchar(14) Declare bInOut char(2) Declare pGoodNum int Declare pGoodStore int Declare GoodName int Declare InOrOut int Declare GoodNum int Select rownum=ro

23、wcount if rownum=0 return if rownum=1 begin select pGoodName=GoodName,bInOut=InOrOut,pGoodNum=GoodNum from inserted /* 本次操作是购进药品*/ if bInOut=i or bInOut=I update Goods set GoodStore=GoodStore+pGoodNum where GoodName=pGoodName /* 本次操作是售出药品*/ else if bInOut=oor bInOut=O begin select pGoodStore=GoodSto

24、re from Goods where GoodName=pGoodName if pGoodStore2 set info=优良else set info=一般return infoendgo执行:use yaopingoselect 编号,药品名称,生产厂家,生产日期,保质期,用途,规格,进货价,销售价,dbo.yaopin_yp_info(保质期) as 药品质量from 药品go执行后的结果5.5.4、表值函数创建CREATE FUNCTION jinhuo_time(time_id datetime)RETURNS TABLE ASRETURN (SELECT distinct 进货

25、.流水号,进货.药品,进货.进货时间,进货.数量,进货.折扣,进货.经手人from 进货where 进货.进货时间=time_id)GO执行use yaopin goselect * from jinhuo_time(2012-3-5 0:00:00)go执行后的结果5.5.5、聚合函数use yaopingoselect count(distinct 药品)as 药品种类from 销售go执行后的结果5.6、存储过程5.6.1、查询存储过程创建CREATE PROCEDURE YP_PRO_BJASSELECT 药品名称 from 药品GO执行use yaopinexecute YP_PRO

26、_BJgo执行结果如下表5.6.2、带输入参数的存储过程创建CREATE PROCEDURE jinhuo_infor流水号char(12)ASSELECT 药品,经手人 from 进货where 流水号=流水号GO执行:exec jinhuo_infor 01执行结果如下5.6.2、带输出参数的存储过程创建create procedure jinhuo tname varchar(10), iks int output as select iks=count(*) from 进货where 经手人=tnamedeclare num intgo执行declare num intexec jinhuo 严文娟,num outputselect num as 经手药品数执行结果如下:6.前台设计及操作6.1前台管理代码前台进货管理代码前台客户管理代码前台-销售管理代码前台-药品管理代码前台-员工管理代码6.2前台操作界面进货操作界面:客户操作界面:销售操作界面:药品操作界面:员工操作界面:七、参考文献1、申时凯、戴祖诚、佘玉梅 数据库原理与技术清华大学 2、王珊、陈红 数据库系统原理教程 北京:清华大学出版社,1998.7专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁