超市POS管理系统设计实例.docx
《超市POS管理系统设计实例.docx》由会员分享,可在线阅读,更多相关《超市POS管理系统设计实例.docx(13页珍藏版)》请在冰豆网上搜索。
超市POS管理系统设计实例
超市POS管理系统
数据库设计
数据库在一个信息管理系统中占有非常重要的地位,数据库结构的设计好坏将直接对应用系统的效率以及实现的效果产生影响。
数据库设计一般包括以下四个部分:
数据库需求分析、数据库概念结构设计、数据库逻辑结构设计、数据库物理结构实现。
、数据库需求分析
通过对超市管理工作过程的内容和数据流图分析,设计如下面的数据项和数据结构。
1、员工信息,包括的数据项有:
员工编号,姓名,性别,职务,口令,权限级别、身份证号,所属部门编号等。
2、部门信息,包括的数据项有:
部门编号,部门名称。
3、供应商信息,包括的数据项有:
供应商编号,供应商名称,地址,邮政编码,电话号码,税号,银行帐号,开户银行,联系人,备注等。
4、会员信息,包括的数据项有:
会员编号,姓名,性别,身份证号,消费总金额,积分等。
5、入库信息,包括的数据项有:
入库编号,入库日期,商品编号,计量单位,入库价格,销售价格,数量,总金额,供应商编号,业务员编号等。
6、商品信息,包括的数据项有:
商品编号,所属类别,数量,单价,商品名称等。
7、销售岀货单主信息,包括的数据项有:
销售日期,总金额,是否现金,是否会员,会员编号、收银号编号等。
8销售出货单子信息,包括的数据项有:
商品编号,数量,单价,折扣比例,金额等。
二、数据库概念结构设计
根据上面设计规划出的实体,我们对各个实体具体的描述E-R图如
部门信息E-R图
图3入库信息E-R图
图4商品信息E-R图
图5销售出货单主信息E-R图
图6销售出货单子信息E-R图
图7会员信息E-R图
图8供应商信息E-R图
实体与实体之间的关系E-R图:
三、数据库逻辑结构设计
员工信息表
字段名
数据类
型
长度
说明
描述
Ygbh
Char
8
不空,主键
员工编号
Name
Char
8
不空
姓名
Sex
Char
2
不空“男'、
'女’
性别
Zw
Char
10
不空
职务
KI
varChar
20
不空
口令
Qxjb
Char
1
不空
权限级别
Sfzh
Char
18
不空,唯一约
束
身份证号
ssbmbh
char
4
不空,外键
所属部门编号
商品信息
字段
名
数据类
型
长度
说明
描述
Spbh
字段
char
部
c
门信息表
商品编号
vz11
1
长度
L
1——?
醯日日
描述
名
型
1
20
不空
商品:
名称
bmbh
char
1
8
c
不空,主键
*a
1
部门编号
乙M3
1J1
1—L-
/Z
1/pq
bmmc
Trr
char
mdcy7*
4
o
不空
—r"/
价格
部门名称
si
int
4
不空
数量
供应商信息表
字段名
数据类
型
长度
说明
描述
Gysbh
Char
8
不空,主键
供应商编号
Gysmc
Char
8
不空
供应商名称
Dz
varChar
20
不空
地址
Yzbm
Char
6
不空
邮政编码
Dhhm
varchar
15
不空
电话号码
Sh
varChar
3
不空
税号
Yhzh
varChar
20
不空
银行帐号
Khyh
Char
8
不空
开户银行
Lxr
Char
8
不空
联系人
beizhu
text
16
备注
会员信息表
字段
名
数据类
型
长度
说明
描述
Hybh
Char
8
不空,主键
会员编号
Name
Char
6
不空
姓名
Sex
Char
2
不空,‘
男,、,女,
性别
Sfzh
varChar
20
不空
身份证号
xfzje
money
8
不空
消费总金额
jf
int
4
不空
积分
入库信息表
字段
名
数据类型
长度
说明
描述
Rkbh
char
8
不空,主键
入库编号
Rkrq
Datetime
8
不空
入库日期
Spbh
char
8
不空,外键
商品编号
JIdw
Char
2
不空
计量单位
Rkjg
Money
8
不空
入库价格
Xsjg
Money
8
不空
销售价格
SI
int
4
不空
数量
Zje
Money
8
不空
总金额
Gysbh
char
8
不空,外键
供应商编号
ywybh
char
8
不空,外键
业务员编号
库存信息表
字段名
数据类
长度
说明
描述
型
销售出
1货单主信息
kcxxbh
字段
char
数据类型
8
长度
不空,主键
说明
库存信息编号
描述
Spbh
char
8
不空,外键
商品编号
TT
Xsrqkcl
datetimeint
8
4
不?
库存售日期
1
Zje
Money
8
不空
总金额
Sfxj
Char
2
不空
是否现金
Sfhy
char
2
可为空
是否会员
Hybh
Char
8
不空,外键
会员编号
Syybh
char
8
不空,外键
收银号编号
销售岀货单子信息
字段
名
数据类
型
长度
说明
描述
Spbh
char
8
不空,外键
商品编号
SI
int
4
不空
数量
Dj
money
8
不空
单价
Zkbl
char
10
不空
折扣比例
Je
money
8
不空
金额
四、数据库物理结构实现
根据以上的逻辑分析所得到表的关系,我们使用
T-SQL语言设计得到数据库和数据表。
1・createdatabaseglxt
on
(name=pos_dat,
filename=,D:
\',
size=5,maxsize=20,filegrowth=l)
LOGon
(name=pos_log,
filename二'D:
\',
size=5,
maxsize=20,filegrowth=l)
2.createtablebm
(bmbhchar(8)notnull
constraintPK_bnoprimarykey,bmmcchar(4)notnull
go
3-createtablesp
(spbhchar(8)notnull
constraintPK_cnoprimarykey,sslbchar(8)notnull,
siintnotnull,
jgmoneynotnull
go
4-createtablegys
(gysbhchar(8)notnull
constraintPK_dnoprimarykey,gysmcchar(8)notnull,dzvarchar(20)notnull,yzbmchar(8)notnull,dhhmvarchar(15)notnull,shvarchar(3)notnull,yhzhvarchar(20)notnull,lxrchar(8)notnull,beizhutextnull
go
5-createtablehy
(hybhchar(8)notnull
constraintPK_enoprimarykey,
hynamechar(6)notnull,
sexchar
(2)checkCK_hysexin(男','女')notnull,
sfzhvarchar(20)notnull,
xfzjemoneynotnull,
jfintnotnull
Go
6-createtableyg
(ygbhchar(8)notnull
constraintPK_fnoprimarykey,ygnamechar(8)notnull,
sexchar
(2)checkCK_ygsexin(zw男’,’女’)notnull,
char(8)notnull,klvarchar(20)not
null,qxjbchar(4)notnull,sfzhvarchar(18)not
null,ssbmbhchar(8)notnull
constraintFK_anoforeignkeyreferencesbm(bmbh)
go
1.createtablerk
constraintPK_gnoprimarykey,
rkrqdatetimenotnull,
spbhchar(8)notnull
constraintFK_bnoforeignkeyreferencessp(spbh),
ywybhchar(8)notnull
constraintFK_cnoforeignkeyreferencesyg(ygbh),
jldwchar
(2)notnull,
rkjgmoneynotnull,
gysbhchar(8)notnull
constraintFK_dnoforeignkeyreferencesgys(gysbh),
zjemoneynotnull,
siintnotnull
go
8-createtablezhuxx
zjemoneynotnull,sfxjchar
(2)checkCK_zhuxx_sfxjin('是'否')notnull,
sfhychar
(2)checkCK_zhuxx_sfhyin(hybh是’,’否’),
char(8)notnullconstraintFK_enoforeign
keyreferenceshy(hybh),syybhchar(8)notnullconstraintFK_fnoforeignkeyreferencesyg(ygbh)go
9・createtablezixx(spbhchar(8)notnull
constraintFK_gnoforeignkeyreferencessp(spbh),
djmoneynotnull,
jemoneynotnull,go10.createtablekc
(kcxxbhchar(8)notnull
constraintPK_pnoprimarykey,
spbhchar(8)notnull
constraintFK_inoforeignkeyreferencessp(spbh),
kclintnotnull
zkblchar(10)notnull,
go五、数据库扩展功能实现
TRIGGERtriger_sl
ONrk
afterinsert
AS
updatekc
setkcl=kcl+(selectsifrominserted)
wherespbh=(selectspbhfrominserted)2.CREATETRIGGERtriger_kc
ONzixx
afterdelete
ASupdatekc
setkcl=kcl-(selectsifromdeleted)
wherespbh=(selectspbhfromdeleted)