




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选文档数据库原理及应用课程设计数据库原理及应用课程设计 小组名称:小组名称: 小太阳小组小太阳小组 数据库名称:数据库名称: 药品存销信息管理系统药品存销信息管理系统 精选文档目目录录1 数据库需求分析.11.1 需求分析 .11.2 功能需求分析 .21.2.1 药品存销基本流程图 .21.2.2 信息的更新 .21.2.3 数据需求 .31.3 数据字典 .51.4 数据结构名称 .62 数据库概念结构设计.93 数据库逻辑结构设计.94 数据库物理结构设计.155 数据库操作代码部分.185.1 数据库创建代码.185.2 创建表代码.185.3 数据库的查询操作代码.205.4 视图
2、创建代码 .216 系统规范化设计.226.1 数据库表的规范化设计.226.2 数据库的完整性设计.226.3 数据库的维护和安全性设计.227 总结.237.1 收获.247.2 不足和改进.24精选文档1 1 数据库需求分析数据库需求分析1.11.1 需求分析需求分析病人对药物有需求之后向药店的销售人员发出买某种药品的请求,经过某销售人员核查审视之后向药店仓库管理人员发出取药请求(病人和销售人员为多对多的关系,销售人员和仓库管理人员为多对多关系),仓库管理人员接受请求之后去仓库拿药并记录在案(仓库管理人员和仓库之间为一对一关系) ,之后将所需要的药给销售人员,再由销售人员售卖给客户并记录
3、在案。当仓库某药品库存不够的时候,由仓库保管员发出进药请求,经过核实之后由药品制造厂商供货给仓库保管员(药品供货厂商和仓库之间为多对一关系),并由仓库保管员记录并使药品存入其中一个仓库并记录在案,以便下次销售人员请求提取药品。精选文档1.21.2 功能需求分析功能需求分析1.2.11.2.1 药品存销基本流程图药品存销基本流程图1.2.21.2.2 信息的更新信息的更新药品供应商信息药品信息供应订单信息销售订单信息仓库信息客户信息仓库药品库存信息存储 修改 删除 查询员工信息药品供应商是否提交订单是仓库客户客户是否提交订单是根据库存情况提交药品订单药品入库 否否精选文档1.2.31.2.3 数
4、据需求数据需求1.1.药品供应商:药品供应商:公司名、地点、联系方式、供应药品名称2.2.药品:药品:药品编号、药品名称 、生产厂家、生产日期、保质期、用途、进价、售价3.3.员工:员工:员工编号、姓名、性别、年龄、学历4.4.仓库:仓库:仓库编号、药品存放位置、药品名称、药品编号、数量5.5.入库单:入库单:仓库编号、仓库保管员编号、药品名称、药品数量6.6.仓库保管员:仓库保管员:仓库保管员编号、姓名7.7.出库单:出库单:仓库编号、仓库保管员编号、药品名称、出库药品数量、销售人员编号8.8.销售人员:销售人员:精选文档销售人员编号、姓名9.9.客户:客户:客户编号、姓名、联系方式、性别精
5、选文档1.31.3 数据字典数据字典1.supCom 供应商公司名 varchar(20)2.supPos 供应商地点 varchar(40)3.supPhon 供应商联系方式 varchar(20)4.supMed 供应商药品名称 varchar(20)5.supTime 供应时间 datetime6.supNum 供应数量 int7.medName 药品名称 varchar(20)8.medNum 药品编号 int9.medProd 药品生产厂家 varchar(20)10. medTime 药品生产时间 date11. medExpDate 药品保质期 varchar(20)12. me
6、dUse 药品用途 varchar(40)13. InPri 药品进价 float14. OutPri药品售价float15. cusNum 客户编号 int16. cusTime 客户购买时间 date17. salNum 销售数量 int18. cusName 客户姓名 varchar(20)19. cusPhone 客户联系方式 varchar(11)20. cusSex 客户性别 varchar(2)21. staNum员工编号 int22. staName 员工姓名 varchar(20)23. staSex员工性别varchar(2)24. staAge员工年龄int25. sta
7、Edu员工学历varchar(20)26. warNum仓库编号int27. warMedNum仓库药品库存 int28. medPos药品存放位置varchar(20)29. salPeoNum销售人员编号int30. warPeoNum仓库保管员编号int31. OutMedNum出库药品数量 int精选文档1.41.4 数据结构名称数据结构名称数据结构名称含义组成Supplier供应商supCom *1supPosesupPhonsupMedSupplyChain供应订单supCom *1supNumsupTimemedName *2Medicine药品medNum *3medName
8、*2medProdmedTimemedExpDatemedUseInPri精选文档OutPriSalesOrder销售订单cusNum *9cusTimemedNum *7salNumsalPeoNum *8SaleMan销售人员salPeoNum *8 *6staNameCustomer客户cusNum*9cusNamecusPhonecusSexStaff员工staNum *6staNamestaSexstAgestaEdu精选文档WarStorage仓库warNum*4medPosmedNamemedNumwarMedNumInStorage入库单warNumwarPeoNummedNu
9、m *3supNumStoreKeeper仓库保管员warPeoNum *6warPeoNamewarNum *4OutStorage出库单warNumwarPeoNummedNum *7outMedNumsalPeoNum精选文档2 数据库数据库概念结构概念结构设计设计药品供应供应商数量时间入库仓库公司名称mingchen数量时间药品编号仓库员工出库销售员工销售客户数量时间药品编号销售员工编号仓库员工编号精选文档3 3 数据库逻辑结构数据库逻辑结构设计设计Supplier数据项含义数据类型长度其他supCom供应商公司名varchar20主键suppose供应商地点varchar40supP
10、hon供应商联系方式varchar20supMed供应商药品名称varchar20SupplyChain数据项含义数据类型长度其他supCom供应商公司名varchar20外键supNum供应数量intsupTime供应时间datetimemedName药品名称varchar20主键精选文档Medicine数据项含义数据类型长度其他medNum药品编号int主键medName药品名称varchar20外键medProd药品生产厂家varchar20medTime药品生产时间datemedExpDate药品保质期varchar20medUse药品用途varchar40InPri药品进价float
11、OutPri药品售价floatSalesOrder数据项含义数据类型长度其他cusNum客户编号int外键cusTime客户购买时间datemedNum客户编号int外键salNum销售数量intsalPeoNum销售人员编号int外键精选文档SaleMan数据项含义数据类型长度其他salPeoNum销售人员编号int主键、外键staName员工姓名varchar20Customer数据项含义数据类型长度其他cusNum客户编号int主键cusName客户姓名varchar20cusPhone客户联系方式varchar11cusSex客户性别varchar2Staff数据项含义数据类型长度其他
12、staNum员工编号int主键staName员工姓名varchar20staSex员工性别varchar2stAge员工年龄intstaEdu员工学历varchar20精选文档WarStorage数据项含义数据类型长度其他warNum仓库编号int主键medPos药品存放位置varchar20medName药品名称varchar20medNum药品编号intwarMedNum仓库药品库存intInStorage数据项含义数据类型长度其他warNum仓库编号intwarPeoNum销售人员编号intmedNum药品编号int外键supNum供应数量intStoreKeeper数据项含义数据类型长
13、度其他warPeoNum仓库保管员编号int外键warPeoName仓库保管姓名varchar20warNum仓库编号int外键精选文档OutStorage数据项含义数据类型长度其他warNum仓库编号intwarPeoNum仓库保管员编号intmedNum药品编号int主键outMedNum出库药品数量intsalPeoNum销售人员编号int精选文档4 4 数据库物理结构设计数据库物理结构设计create database MEDCINEcreate schema SALES;create table SALES.Supplier(supCom VARCHAR(20) PRIMARY KE
14、Y, supPose VARCHAR(40),supPhon VARCHAR(20),supMed VARCHAR(20);create table SALES.SupplyChain(supCom VARCHAR(20),foreign key(supCom)references SALES.Supplier(supCom),supNum INTEGER,supTime DATETIME,medName VARCHAR(20) PRIMARY KEY)create table SALES.Medicine(medNumINTEGER PRIMARY KEY,medNameVARCHAR(20
15、),foreign key(medName)references SALES.SupplyChain(medName),medProdVARCHAR(20),medExpDateVARCHAR(20),medUseVARCHAR(40),InpriFLOAT,OutPriFLOAT)create table SALES.Customer(cusNumINTEGER PRIMARY KEY,cusNameVARCHAR(20),cusPhone VARCHAR(11),cusSexVARCHAR(2)create table SALES.Staff(staNumINTEGER PRIMARY K
16、EY,staNameVARCHAR(20),staSexVARCHAR(2),staAgeINTEGER,精选文档staEduVARCHAR(20)create table SALES.SaleMan(salPeoNumINTEGER PRIMARY KEY,foreign key(salPeoNum)references SALES.Staff(staNum),staNameVARCHAR(20)create table SALES.WarStorage(warNumINTEGER PRIMARY KEY,medPosVARCHAR(20),medNameVARCHAR(20),medNum
17、INTEGER,warMedNumINTEGER)create table SALES.InStorage(warNumINTEGER,foreign key(warNum)references SALES.WarStorage(warNum),warPeoNumINTEGER,medNumINTEGER,foreign key(medNum)references SALES.Medicine(medNum),supNumINTEGER,)create table SALES.StoreKeeper(warPeoNumINTEGER,foreign key(warPeoNum)referenc
18、es SALES.Staff(staNum),warPeoNameVARCHAR(20),warNumINTEGER,foreign key(warNum)references SALES.WarStorage(warNum),)create table SALES.OutStorage(warNumINTEGER,warPeoNumINTEGER,medNumINTEGER PRIMARY KEY,outMedNumINTEGER,salPeoNumINTEGER)精选文档create table SALES.SalesOrder(cusNumINTEGER,foreign key(cusN
19、um)references SALES.Customer(cusNum),cusTimeDATETIME,medNumINTEGER,foreign key(medNum)references SALES.OutStorage(medNum),salNumINTEGER,salPeoNumINTEGER,foreign key(salPeoNum)references SALES.SaleMan(salPeoNum)精选文档5 5 数据库操作代码部分数据库操作代码部分5.15.1 数据库创建数据库创建代码代码create database MEDCINEcreate schema SALES;
20、5.25.2 创建表代码创建表代码create table SALES.Supplier(supCom VARCHAR(20) PRIMARY KEY, supPose VARCHAR(40),supPhon VARCHAR(20),supMed VARCHAR(20) UNIQUE);create table SALES.SupplyChain(supCom VARCHAR(20),foreign key(supCom)references SALES.Supplier(supCom),supNum INTEGER,supTime DATETIME,medName VARCHAR(20) P
21、RIMARY KEY)create table SALES.Medicine(medNumINTEGER PRIMARY KEY,medNameVARCHAR(20),foreign key(medName)references SALES.SupplyChain(medName),medProdVARCHAR(20) NOT NULL,medExpDateVARCHAR(20) NOT NULL,medUseVARCHAR(40),InpriFLOAT,OutPriFLOAT)create table SALES.Customer(cusNumINTEGER PRIMARY KEY,cusN
22、ameVARCHAR(20) not NULL,cusPhone VARCHAR(11) NOT NULL,cusSexVARCHAR(2)精选文档)create table SALES.Staff(staNumINTEGER PRIMARY KEY,staNameVARCHAR(20),staSexVARCHAR(2) CHECK(staSex= 男or staSex= 女),staAgeINTEGER,staEduVARCHAR(20)create table SALES.SaleMan(salPeoNumINTEGER PRIMARY KEY,foreign key(salPeoNum)
23、references SALES.Staff(staNum),staNameVARCHAR(20)create table SALES.WarStorage(warNumINTEGER PRIMARY KEY,medPosVARCHAR(20) UNIQUE,medNameVARCHAR(20),medNumINTEGER,warMedNumINTEGER)create table SALES.InStorage(warNumINTEGER,foreign key(warNum)references SALES.WarStorage(warNum),warPeoNumINTEGER,medNu
24、mINTEGER,foreign key(medNum)references SALES.Medicine(medNum),supNumINTEGER,)create table SALES.StoreKeeper(warPeoNumINTEGER,foreign key(warPeoNum)references SALES.Staff(staNum),warPeoNameVARCHAR(20),warNumINTEGER,foreign key(warNum)references SALES.WarStorage(warNum),)create table SALES.OutStorage(
25、warNumINTEGER,精选文档warPeoNumINTEGER,medNumINTEGER PRIMARY KEY,outMedNumINTEGER,salPeoNumINTEGER)create table SALES.SalesOrder(cusNumINTEGER,foreign key(cusNum)references SALES.Customer(cusNum),cusTimeDATETIME,medNumINTEGER UNIQUE,foreign key(medNum)references SALES.OutStorage(medNum),salNumINTEGER,sa
26、lPeoNumINTEGER,foreign key(salPeoNum)references SALES.SaleMan(salPeoNum)5.35.3 数据库的查询操作数据库的查询操作代码代码销售人员查询订单表select * from Sales.SalesOrder仓库保管员查询仓库内药品库存select mednum 药品名,WarMedNum 剩余库存from Sales.WarStorageBOSS查询公司内所有员工的姓名和编号select staNum 员工编号,staName 员工姓名from Sales.Staff查询顾客所购药品的用途select c.cusNum 客户
27、编号,cusName 客户姓名,medName 药品名称,medUse 药品用途from Sales.Medicine A,sales.SalesOrder B,Sales.Customer Cwhere A.medNum=B.medNumand B.cusNum=C.cusNum精选文档5.45.4 视图创建代码视图创建代码顾客所购买药品用途create view XC ASselect c.cusNum 客户编号,cusName 客户姓名,medName 药品名称,medUse 药品用途from Sales.Medicine A,sales.SalesOrder B,Sales.Custo
28、mer Cwhere A.medNum=B.medNumand B.cusNum=C.cusNum各个员工的职责create view sd asselect 员工编号,员工姓名,员工职责 from sd1union select 员工编号,员工姓名,员工职责from sd2子视图 sd2create view sd2 asselect salPeoNum 员工编号,staName 员工姓名,销售人员员工职责 from Sales.SaleMan子视图 sd1create view sd1 asselect warpeonum 员工编号,warpeoname 员工姓名,仓库保管员 员工职责fr
29、om Sales.StoreKeeper精选文档6 系统系统规范化设计规范化设计6.16.1 数据库表的规范化设计数据库表的规范化设计(你设计的表都满足第几(你设计的表都满足第几范式)范式)由于每个属性不可再分,所以满足第一范式;每一组非主属性都完全依赖于主码,满足第二范式6.26.2 数据库的完整性设计数据库的完整性设计( (你创建了哪些约束和触发你创建了哪些约束和触发器,要有触发器的代码器,要有触发器的代码) )约束:员工性别和客户性别不能为空,客户联系方式不能为空,药品保质期和生产日期不能为空,员工编号和药品编号唯一,其他某些属性为主键和外键约束。入库时,修改仓库内该药品的库存数量:cr
30、eate trigger inWare on Sales.Instorage For Insert as begin update Sales.WarStorageset WarMedNum=WarMedNum+(select supNum from insertedwhere WarStorage.MedNum=inserted.MedNum)end出库时修改相应的库存数据create trigger OutWare on Sales.OutStorageFor Insert as begin if exists (select * from Sales.WarStorage,insertedwhere inserted.OutMedNumSales.WarStorage.WarMedNum )begin pri
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 信息技术必修一《数据与计算》第二章第二节《程序设计语言基本知识》教学设计
- 定西师范高等专科学校《生命科学基础二:细胞生物学》2023-2024学年第二学期期末试卷
- 沈阳职业技术学院《中医药文化与养生》2023-2024学年第二学期期末试卷
- 驻马店职业技术学院《写意画》2023-2024学年第二学期期末试卷
- 阜阳幼儿师范高等专科学校《电子线路CAD技术B》2023-2024学年第二学期期末试卷
- Unit 3 Amazing animals PartA (教学设计)-2024-2025学年人教PEP版(2024)英语三年级上册
- 盐城师范学院《现代材料分析技术》2023-2024学年第二学期期末试卷
- 广东云浮中医药职业学院《民俗学与民间文学》2023-2024学年第二学期期末试卷
- 钢轨购销合同范本
- 山西大同大学《三维机械CAD实验》2023-2024学年第二学期期末试卷
- 2022年四川甘孜州州属事业单位考调工作人员冲刺卷贰(3套)答案详解
- 超星尔雅学习通《民俗资源与旅游》2020章节测试含答案
- 劳务投标书技术标
- 尿碘检测临床意义
- 2022年山东司法警官职业学院单招语文试题及答案解析
- 2023版北京协和医院重症医学科诊疗常规
- 钢网验收报告
- 防水补漏工程合同(合同版本)
- 铁路局中间站管理手册
- 监理日志表(标准模版)
- H3C-CAS虚拟化平台详细介绍
评论
0/150
提交评论