数据库课程设计-----中草药销售管理系统.doc
- 文档编号:1644437
- 上传时间:2022-10-23
- 格式:DOC
- 页数:21
- 大小:3MB
数据库课程设计-----中草药销售管理系统.doc
《数据库课程设计-----中草药销售管理系统.doc》由会员分享,可在线阅读,更多相关《数据库课程设计-----中草药销售管理系统.doc(21页珍藏版)》请在冰豆网上搜索。
上海电力学院
数据库设计课程设计
题 目:
中草药销售管理系统
学生姓名:
李辰源
学号:
20131791班级:
201054
院 系:
计算机科学与技术学院
专业年级:
计算机科学与技术(卓越) 级
2015年 6月 10 日
目录
一、需求分析 -1-
(1) 问题描述:
-1-
(2)系统性要求:
-1-
(3)完整性规则:
-1-
(4)安全性规则:
-1-
二、概念结构设计 -2-
三、逻辑结构设计 -4-
(1)模式设计:
-4-
(2)子模式设计:
-6-
I、视图:
-6-
II、查询信息:
-6-
四、数据库的物理设计 -6-
五、数据库设计实现及运行 -7-
(1)数据库的创建 -7-
(2)数据表的创建(举例) -7-
(3)视图的创建(仅需给出自己设计模块中所用的视图) -7-
(4)存储过程的定义实现(仅需给出自己设计模块中所用的) -8-
(5)触发器的定义实现(仅需给出自己设计模块中所用的) -10-
1)插入数据操作 -11-
2)插入数据操作 -14-
六、系统详细设计及实现 -14-
(1)系统功能模块说明 -14-
(2)每个模块的关键语句及关键技术说明 -15-
I、仓库管理:
-15-
II、销售管理:
-15-
七、附录:
部分代码 -16-
八、心得体会 -19-
一、需求分析
(1)问题描述:
中草药销售管理系统主要面向于小型商户,实现管理层,门面销售层人员的权限分离,通过管理仓库,销售记录等数据统计并显示各类信息。
(2)系统性要求:
i.信息录入:
进货、销售等环节,都需要往数据库中添加信息。
ii.信息修改:
当数据库中信息发生了改变,需要及时修改信息
iii.信息查询:
可以按条件查询药品基本信息、进货信息、销售信息、当前仓库中的库存情况等,并尽可能实现多条件组合查询。
iv.统计、汇总各药品在规定时间段内的进货总量、销售总量等。
v.将近过期的商品、库存量较少的商品请给出提醒。
vi.用户权限的限定(超级用户,可以使用本系统提供的任何功能;管理人员,对药品的进货,定价等进行管理;销售员工用户,可以记录和查询货物的销售情况,但不可以登记商品的入库操作)
(3)完整性规则:
a)设定缺省约束。
如进货日期为系统当前日期。
b)设置非空约束。
如药品名称。
c)实施CHECK约束,如进货单价、进货数量应大于0等。
d)实施CHECK约束,约束药品类别为:
中药、草药、中成药。
e)设计触发器,实现库存信息的自动更新。
(4)安全性规则:
a)不同用户的权限界面,通过不同的登陆账户区分账户并开启不同的界面。
b)分离最低权限用户同时拥有仓管权限和销售权限的可能性。
c)程序代码中界面代码和数据库访问代码分开,加强安全性。
二、概念结构设计
数据库E-R图:
实体转化为关系模式:
销售记录:
(销售编号,仓位号,销售单价,销售量,柜台号,销售人工号,销售日期)
库存信息:
(仓位号,进货编号,库存数量)
进货信息:
(进货编号,商品编号,生产日期,进货日期,有效期,进货单价,进货数量)
商品信息:
(商品编号,商品类别,商品名称,产地)
采购:
(采购编号,商品编号,生产商,采购价格)
权限层次:
权限等级:
超级权限为超级用户所有,面向对象为企业的最高领导人,可使用所有项目,查看各项资料。
一级权限为经理用户所用,面向对象为企业管理层,除查看企业季度营销外,可使用其他生育功能。
二级权限为销售员所用,面向对象为企业营销最前方的工作人员,权限较低。
功能模块图:
功能模块:
仓库管理:
查询在库药物,仓储记录等一系列仓库记录,控制进/出货,查询记录。
销售记录:
查询搜友销售记录,可以添加新的销售记录,并自动与仓库记录同步。
信息查询:
通过指定药物类别,名称等一系列信息,查看相应的记录。
季度查询:
从整体角度观察某段时间的进出货情况,帮助企业制定战略。
逼仓巡视:
查询所有记录,确认其中逼仓,逼期药物。
三、逻辑结构设计
(1)模式设计:
销售记录:
(销售编号,仓位号,销售单价,销售量,柜台号,销售人工号,销售日期)
库存信息:
(仓位号,进货编号,库存数量)
进货信息:
(进货编号,商品编号,生产日期,进货日期,有效期,进货单价,进货数量)
商品信息:
(商品编号,商品类别,商品名称,产地)
采购:
(采购编号,商品编号,生产商,采购价格)
ØItem:
药品信息
字段名
类型
大小
是否
可为空
备注
药品编号
Int
否
primarykey
药品类别
Varchar
20
否
Check_约束
药品名称
varchar
20
否
产地
varchar
20
否
ØPutIn:
进货信息
字段名
类型
大小
是否
可为空
备注
进货编号
Int
否
primarykey
药品编号
Int
否
Foreignkey
生产日期
date
否
进货日期
date
否
缺省默认值(当天日期)
有效期
date
否
进货单价
Int
否
进货数量
Int
否
ØSale:
销售信息
字段名
类型
大小
是否
可为空
备注
销售编号
Int
否
primarykey
仓位号
Int
否
Foreignkey
销售单价
Int
否
销售数量
Int
否
柜台号
Int
否
销售人工号
Int
否
销售日期
Date
否
缺省默认值(当天日期)
ØWarehouse:
仓储信息
字段名
类型
大小
是否
可为空
备注
仓位号
Int
否
primarykey
进货编号
Int
否
Foreignkey
库存数量
Int
否
ØItem:
采购
字段名
类型
大小
是否
可为空
备注
采购编号
Int
否
primarykey
药品名称
Varchar
20
否
Foreignkey
采购价格
Int
否
生产商
varchar
20
否
采购数量
Int
否
(2)子模式设计:
I、视图:
逼仓情况(进货编号,药品名称,进货单价,进货数量,有效期,库存数量)
仓储情况(仓位号,药品编号,进货编号,药品类别,药品名称,进货日期,有效期,库存数量,产地)
进货情况(进货编号,药品编号,药品类别,药品名称,仓位号,进货日期,有效期,进货数量,产地,进货单价)
销售情况(销售编号,.药品编号,柜台号,销售人工号,药品名称,销售单价,进货数量,销售数量,库存数量,药品类别,仓位号,销售日期)
选项卡专用(药品类别,药品名称,产地,库存数量,生产日期,进货日期,有效期)
II、查询信息:
A、查询进货信息:
进货编号、药品编号、药品类型、药品数量、进货日期、有效期、生产日期
B、查询药品信息:
药品编号、药品数量、药品名字、生产日期、有效期、产地
C、查询销售信息:
进货编号、药品编号、进货单价、销售数量、进货日期
D、库存信息查询:
药品编号、库存数量、有效期、生产日期
四、数据库的物理设计
为了提高在表中搜索元组的速度,在实际实现的时候应该基于某些属性建立索引。
给出所建立的索引。
(包括按哪些表中哪些属性按升序还是降序来创建索引及相应的T-SQL的创建语句)。
Createindexindex_Me
onMedicine(药品编号)
Createindexindex_kucun
onWarehouse(仓位号)
五、数据库设计实现及运行
(1)数据库的创建
T-SQL语句:
createdatabaseMedicine
(
name='Medicine_data',
filename='D:
\Medicine_data.mdf',
size=5mb
maxsize=100mb
filegrowth=15%
)
(2)数据表的创建(举例)
T-SQL语句:
说明:
若有完整性约束的一方面可以创建时同时实现。
按需求及自行设计模块中所实现的情况,在该部分对完整性约束加以实现。
droptableSale
createtableSale
(
销售编号intidentity(1,1)primarykey,
仓位号intnotnull,
销售单价intnotnull,
销售量 intnotnull,
柜台号intnotnull
销售人工号intnotnull
销售日期datenotnull
)
(3)视图的创建(仅需给出自己设计模块中所用的视图)
T-SQL语句:
Createview仓储情况
As
SELECTTOP(100)PERCENTdbo.PutIn.进货编号,dbo.Item.药品名称,dbo.PutIn.进货单价,dbo.PutIn.进货数量,dbo.PutIn.有效期,
dbo.Warehouse.库存数量
FROMdbo.ItemINNERJOIN
dbo.PutInONdbo.Item.药品编号=dbo.PutIn.药品编号INNERJOIN
dbo.WarehouseONdbo.PutIn.进货编号=dbo.Warehouse.进货编号
WHERE(DATEADD(yy,-1,dbo.PutIn.有效期) (dbo.Warehouse.库存数量<60) (4)存储过程的定义实现(仅需给出自己设计模块中所用的) T-SQL语句: USE[Medicine] GO /******Object: StoredProcedure[dbo].[Out]ScriptDate: 2015/6/1112: 21: 41******/ SETANSI_NULLSON GO SETQUOTED_IDENTIFIERON GO ALTERPROCEDURE[dbo].[Out] @仓位号int, @数量int AS ifexists(select*fromWareho
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 中草药 销售 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)