药品存销信息管理系统(全)
更新时间:2024-03-20 06:09:01 阅读量: 综合文库 文档下载
信息工程学院
《数据库课程设计》论文
题 目:学 号:专业班级:姓 名:指导老师:完成日期:药品存销信息管理系统
*********** 计算机科学与技术103
***** ****** 2012年01月13日
药品存销信息管理系统数据库设计
****
(信息工程学院计算机科学与技术10级3班)
摘 要
本次课程设计是药品存销信息管理系统,伴随着社会的复杂化,传统的“一支笔,一本帐簿”的药品销售管理方式也慢慢的无法适应形势的变化。随着信息技术的发展,计算机已被广泛的用于社会的各个领域,成为推动社会发展的技术动力。因此设计药品存销信息系统是当务之急,本系统包括药品采购,药品存储,药品销售。药品采购包括采购员进货,采购员退货。药品存储包括仓库存储以及仓库管理员管理仓库。药品销售包括顾客买药与顾客退药。本系统包括几个视图来使数据库使用者快速的查询想要得到的信息,本系统包括几个PL/SQL语句块,还包括几个触发器,使得数据得到同步修改,使数据库中的数据更加合理。
关键字:数据库;经销存;药品管理系统
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
目录
目录............................................................................................................................. - 1 - 1.需求分析 .................................................................................................................. - 3 -
1.1需求分析阶段处理对象及组织 ......................................................................... - 3 - 1.2信息处理及系统功能 ....................................................................................... - 3 -
1.2.2数据字典 .............................................................................................. - 5 - 2.数据库结构设计 ...................................................................................................... - 5 -
2.1 概念设计........................................................................................................ - 5 -
2.2 逻辑设计........................................................................................................ - 8 -
2.2.1 建立关系模式 ........................................................................................ - 8 -
2.2.2 关系模式规范化处理...........................................................................- 10 - 以上关系模式中的各实体和联系之间不存在非主属性对主属性的部分函数依赖,也不存在传递函数依赖,已经达到了3NF。 ......................................- 10 -
2.2.3 用户子模式建立..................................................................................- 10 -
3. 数据库物理设计 ...................................................................................................- 10 -
3.1 物理设计阶段目标和任务 ..............................................................................- 10 - 3.2数据存储方面 ................................................................................................- 11 -
3.2.1 建立索引的原则..................................................................................- 11 - 4.数据库实施与测试 .................................................................................................- 11 -
4.1 数据库实施 ...................................................................................................- 11 - 4.1.1 数据库及数据库对象建立....................................................................- 11 -
5.总结 ......................................................................................................................- 13 - 6.附录 ......................................................................................................................- 13 - 附录1 :....................................................................................................................- 13 -
附录2 ..................................................................................................................- 17 - 附录3 ..................................................................................................................- 22 -
- 1 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
引言
随着全球信息技术的飞速发展,尤其是因特网的出现和普及,企业和决策都
发生 了根本的改变。采用信息技术促进、改造药店的生产、经营、管理,有效采集和处理 信息,增强企业决策的有效性,适应全球发展的要求,将成为企业发展的必由之路。 信息管理系统已经成为现代企业的一个重要标志和衡量企业综合实力的重要组成部分。但是,信息管理系统的开发却非常困难。开发一个成功的企业信息管理系统,不仅要有方方面面的专业知识,还要充分分析企业内部、外部环境的变化和关系,以及 在信息管理系统开发过程中所涉及的设备、技术上的复杂性。这就需要系统开发者不断总结经验,不断探索更好的方法和技术。
如今药品无论在任何时候都是一个国家最重要的东西,也是对一个人最需要的东西,药品管理正处于一个高速发展的时期。药品的信息在供应商与销售部和顾客之间大量的流通,因此,建立一个合适的数据库来管理这些数据是必不可少的。这样药品存销信息管理系统就这样诞生了,它可以高效的来管理这些数据,是药品高效的发货和供应。
本次数据库设计严格按照书上的要求和设计数据库步骤,从需求分析,概念设计,逻辑设计,物理设计,到数据库最后的建立、运行。
- 2 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
1.需求分析
主要包括内容:处理对象及组织;信息处理及系统功能;数据库系统性能需要,数据库系统开发环境需求等。在阐述信息及其处理过程时,要辅助业务流程图、数据流程图及数据字典。对上述三个问题可以以附录的形式详细罗列,但正文中必须指明做了哪些业务流程图、数据流程图和数据字典的规模。
1.1需求分析阶段处理对象及组织
(1)熟悉业务并绘制业务路程图;
(2)根据业务流程图明确有哪些数据流动,绘制数据流程图;
(3)建立数据字典,其中包括数据项、数据结构、数据流、数据存储、处理过程等。
1.2信息处理及系统功能 1.2.1数据流程图
药品存销信息管理系统数据流程图如下
(3)第一层数据流程图
图1-1第一层数据流程图
- 3 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
(2)第二层数据流程图——进货
图1-2 进货数据流程图
(4)第二层数据流程图——销售
图1-3 销售数据流程图
- 4 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
(5)第二层数据流程图——存储
图1-4 存储数据流程图
1.2.2数据字典
包含数据项、数据结构、数据流、处理逻辑、数据存储定义(详见附录1)。
2.数据库结构设计
2.1 概念设计
阶段要求:
(1)能真实、充分地反映现实世界,包括事物与事物之间的联系,能满足用户对数据的处理要求,是对现实世界的一个真实模型;
(2)易于理解,因此可以用它和不熟悉计算机的用户交换意见; (3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充;
(4)易于向关系、网状、层次等各种数据模型转换。
- 5 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
2.2.1 分E-R图的建立
建立分E-R图的思想:
对需求分析阶段收集到的数据进行分类、组织(聚集),形成实体、实体的属性,标识实体的码,确定实体之间的联系类型(1:1,1:n,m:n),设计分E-R图;
参照数据流程图画出分E-R图 (1)进货时的分E-R图
图2-1 进货时的分E-R图
- 6 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
(2)销售时的分E-R图
图2-2销售时的分E-R图
(3)盘存时的分E-R图
图2-3盘存时的分E-R图
2.1.2 全局/整体E-R图
1.每次集成局部E-R图是,分两步走
(1)合并。解决各分E-R图之间的冲突,将各分E-R图合并起来生成初步的E-R图。
- 7 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
(2)修改和重构。消除不必要的冗余。 总E-R图
图2-4 总E-R图
2.2 逻辑设计
概念设计阶段是独立于任何一种数据模型的,而逻辑设计阶段则与现实结合起来,逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为与项目所支持的数据模型相符合的逻辑结构。具体任务包括将E-R图转换成关系模型、模型优化、数据库模式定义、用户模式设计。
2.2.1 建立关系模式
转化规则:一个实体型转换为一个关系模式,实体的属性就是关系的属性,实体的码就是关系的码。一个1:1联系可以转换为一个独立关系模式,也可以与任意一端关系模式合并;一个1:N联系可以转换为一个独立关系模式,也可以与n端实对应的关系模式合并;一个M:N联系转换为一个独立关系模式,具有相同码的关系模式可以合并
- 8 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
退货单 表6-12 属性名 类型 SupNumber varchar(20) mannum varchar(20) Gnumber varchar(20) Gweight Float Thdate
Date
销售员售货 属性名 类型 mannum varchar(20) Gnumber varchar(20) Cusnum varchar(20) Gweight Float Gprice Float Gjhdate
Date
顾客退货 属性名 类型
mannum varchar(20) Gnumber varchar(20) Cusnum varchar(20) Gweight Float Gthdate
Date
2.SQL语言实现
创建货物表
create table Goods (
Gnumber varchar(20) primary key, Gname varchar(20) not null, Gweight float check (Gweight>0), Gtype varchar(20),
Gprice float check (Gprice>0), Gdate date,
Gstodate int check(Gstodate>0) )
创建供应商表
create table Supplier (
取值范围 >0
表6-13 取值范围 >0 >0
表6-14 取值范围
- 19 - 是否为主键 Y Y Y N N
是否为主键 Y Y Y N N N
是否为主键 Y Y Y N N
是否可为空 N N N Y Y
是否可为空 N N N Y Y Y
是否可为空 N N N Y Y
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
SupNumber varchar(20) primary key, SupName varchar(20) not null, SupAddress varchar(20), SupPhone varchar(20) )
创建仓库存储表
create table Storageage (
StorageSno int primary key, StorageMin int check(storagemin>0),
StorageNow int check(storagenow>0 and storagenow<=1000), StorageMax int check(storagemax>0 and storagemax<=1000), mannum varchar(20) references Worker(mannum), Jhdate date )
创建工人表
create table Worker (
mannum varchar(20) primary key, manname varchar(20) not null, manPho varchar(20), manAdd varchar(20), mantype varchar(20) )
创建顾客表
create table Customer (
Cusnum varchar(20) primary key, Cusname varchar(20) not null, Cusage int,
CusPhone varchar(20), CusAddress varchar(20), Cusnumber varchar(20) )
仓库货物
create table Manger (
StorageSno int primary key ,
- 20 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
Gnumber varchar(20) references goods(gnumber), StorageNow int check(StorageNow>0) ) 订货单
create table Orderbook (SupNumber varchar(20), mannum varchar(20), Gnumber varchar(20),
Gweight float check (Gweight>0), Gprice float check (Gprice>0), Jhdate date,
primary key (SupNumber,mannum,Gnumber),
foreign key (SupNumber) references Supplier(SupNumber), foreign key (mannum) references Worker(mannum), foreign key (Gnumber) references Goods(Gnumber) ) 退货单
create table Returnbook1 (
SupNumber varchar(20), mannum varchar(20), Gnumber varchar(20),
Gweight float check(Gweight>0), Thdate date,
primary key (SupNumber,mannum,Gnumber),
foreign key (SupNumber) references Supplier(SupNumber), foreign key (mannum) references Worker(mannum), foreign key (Gnumber) references Goods(Gnumber) )
销售员售货
create table Salebook (
mannum varchar(20), Gnumber varchar(20), Cusnum varchar(20),
Gweight float check(Gweight>0), Gprice float check(Gprice>0), Gjhdate date,
primary key(mannum,Gnumber,Cusnum),
foreign key (mannum) references Worker(mannum),
- 21 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
foreign key (Gnumber) references Goods(Gnumber), foreign key (Cusnum) references Customer(Cusnum) )
顾客退货
create table Rerurnbook2 (
mannum varchar(20), Gnumber varchar(20), Cusnum varchar(20),
Gweight float check(Gweight>0), Gthdate date,
primary key(mannum,Gnumber,Cusnum),
foreign key (mannum) references Worker(mannum), foreign key (Gnumber) references Goods(Gnumber), foreign key (Cusnum) references Customer(Cusnum) )
附录3
一.数据库视图
1.创建各种商品的单价的视图
create view price as
select Gname,Gprice from goods
select gname,gprice from price
- 22 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
2.查询目前仓库货物数量的试图create view StorageNow as
select StorageSno,StorageNow from manger
select StorageSno,StorageNow from storagenow
3.查询采购员的采购信息
create view Workweight as
select mannum,Gweight from orderbook
select * from workweight
- 23 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
4.查询售货员卖了多少东西
二.存储过程
1.输入一个供应商编号查询其电话号码
create or replace procedure SupPhone(v_supsno in Supplier.Supnumber%type,v_supphone out Supplier.Supphone%type) is begin
select supphone into v_supphone from Supplier
where v_supsno=supnumber; end; 测试 declare
a varchar2(10):='4'; b varchar2(20); supphone(a,b);
begin
- 24 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
dbms_output.put_line(b);
end; 结果输出
2.查询哪些药品价格大于20(用游标) create or replace procedure goodsprice
is
v_Gname goods.gname%type; v_Gprice Goods.Gprice%type; cursor c1 is select Gname, Gprice from Goods where Gweight>20; begin open c1;
loop
fetch c1 into v_Gname,v_Gprice; exit when c1%notfound;
dbms_output.put_line(v_Gname||'---'||v_Gprice);
end loop;
close c1;
end; 检验:
begin goodsprice; end; 输出结果
3.输入仓库号查询其剩余货物量
create or
replace
procedure
Storagenow1(v_storagesno
Storageage.Storagesno%type,v_storagenow out Storageage.Storagenow%type)
is begin
- 25 - in
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
select Storagenow into v_storagenow From manger
where v_storagesno=Storagesno; end; 测试 declare a int:=5; b int; begin
Storagenow1(a,b);
dbms_output.put_line(b); end; 输出结果
4.向员工基本信息表插入一个元组
create
or
replace
procedure
worker_Insert(v_mannum
worker.mannum%type,v_manname worker.manadd%type,v_mantype
worker.manname%type,v_manpho worker.mantype%type) as begin
insert into worker(mannum,manname,manpho,manadd,mantype) values(v_mannum,v_manname,v_manpho,v_manadd,v_mantype); commit; end; 测试:
begin worker_insert('99','99','99','99','售货员'); end;
select * from worker 输出结果
worker.manpho%type,v_manadd
- 26 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
5.向订单基本信息表插入一个元组
create or replace procedure Book_Insert(v_mannum orderbook.SupNumber%type,v_manname orderbook.mannum%type,v_manpho
orderbook.Gweight%type,v_mantype orderbook.Gprice%type) as begin
insert into orderbook(SupNumber,mannum,Gnumber,Gweight,Gprice) values(v_mannum,v_manname,v_manpho,v_manadd,v_mantype); commit; end;
orderbook.Gnumber%type,v_manadd
测试:
begin Book_Insert('1','27','2',5,5); end;
select * from orderbook
结果输出
6.向销售单基本信息表插入一个元组
create
or
replace
procedure
Book_Insert(v_mannum
salebook.mannum%type,v_manname
salebook.Gnumber%type,v_manpho salebook.Cusnum%type,v_manadd salebook.Gweight%type,v_mantype salebook.Gprice%type) as begin
insert into salebook(mannum,Gnumber,Cusnum,Gweight,Gprice) values(v_mannum,v_manname,v_manpho,v_manadd,v_mantype); commit; end;
测试:
begin Book_Insert('1','1','2',1,2); end;
select * from salebook
- 27 -
10级计算机科学与技术专业103班数据库应用系统课程设计课程论文
7.向退货单基本信息表插入一个元组
create begin delete
from returnbook1
where a=supnumber and b=mannum and c=gnumber; commit;
end return_delete;
or
replace
procedure
Return_delete(a
returnbook1.SupNumber%type,b
returnbook1.mannum%type,c returnbook1.gnumber%type) is
begin
delete('1','27','1'); end;
三.触发器
当向订货单插入一条数据时修改仓库数据
create or replace trigger Book_triger after insert on orderbook for each row begin
update manger
set StorageNow=StorageNow+:new.Gweight where manger.Gnumber=:new.Gnumber; end Book_triger;
检验
insert into orderbook(SupNumber ,mannum ,Gnumber, Gweight, Gprice) values('3','27','2',10,2)
- 28 -
正在阅读:
药品存销信息管理系统(全)03-20
化工原理上册填空选择(课堂版)05-02
质量考核细则(2009) - 图文12-25
2015物理师考试试题及其答案04-11
英山一中明星教师评选方案01-23
关于加强扫黑除恶专项斗争宣传工作实施方案08-03
浮选药剂特点 - 图文01-19
2018年小学二年级数学教师年度考核个人工作总结 - 图文03-13
02-2018年城管局城市管理工作总结及2019年工作思路04-22
走进永康 - 民俗文化04-16
- 冀教版版五年级科学下册复习资料
- 微生物学复习提纲
- 2013—2014学年小学第二学期教研组工作总结
- 国有土地转让委托服务合同协议范本模板
- 我的固废说明书
- 企业管理诊断报告格式
- 东鼎雅苑施工组织设计
- 谈谈如何做好基层党支部书记工作
- 浮梁县环保局市级文明单位创建工作汇报
- 管理学基础知识
- 大学物理实验报告23 - PN结温度传感器特性1
- 计算机网络实践
- 酒桌上这四种情况下要坐牢,千万别不当回事……
- 国家康居示范工程建设技术要点
- 中国贴布行业市场调查研究报告(目录) - 图文
- 新课标下如何在高中物理教学中培养学生的创新能力初探
- 营养师冬季养生食谱每日一练(7月4日)
- 关注江西2017年第3期药品质量公告
- 建设海绵城市专题习题汇总
- 10万吨年环保净水剂建设项目报告书(2).pdf - 图文
- 管理系统
- 药品
- 信息
- 某酒店机电安装工程施工总结-精选模板
- 中南大学远程教育公共关系学习题及答案
- 顺丰优选案例分析 - 图文
- 设计“主问题”优化高中语文阅读教学
- 国家科技重大专项项目(课题)任务合同书(参考格式)
- 华北区域并网发电厂辅助服务管理实施细则
- 最新-年上半年房产公司职代会行政工作报告 精品
- 交互化课堂教学中如何激发学生的主体意识
- 2019人教版 高中数学 2.2.1条件概率课时作业 选修2-3
- 3、钢管贝雷梁支架制梁法检算书(第二十四联)解析
- 2.毕业设计(论文)开题报告表格式- 副本3资料
- 戴鹏讲师 只有过好眼前的苟且,才能谈论诗和远方的田野! 中旭文
- 2015-2020年中国工程勘察设计行业监测及投资决策研究报告 - 图文
- 2015年山东高考理科成绩排名一分一档表
- 如何更好的处理好矛盾纠纷
- 工商管理专业金融银行信用风险管理与知识管理毕业论文外文文献翻
- 镇宣传工作存在的问题及整改措施
- Java面试题及答案解析1
- 2009年高考数学难点突破专题辅导三十三
- 律师事务所常年法律顾问合同(2015最新版)