超市数据库系统.docx

上传人:b****3 文档编号:4613183 上传时间:2022-12-07 格式:DOCX 页数:25 大小:408.20KB
下载 相关 举报
超市数据库系统.docx_第1页
第1页 / 共25页
超市数据库系统.docx_第2页
第2页 / 共25页
超市数据库系统.docx_第3页
第3页 / 共25页
超市数据库系统.docx_第4页
第4页 / 共25页
超市数据库系统.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

超市数据库系统.docx

《超市数据库系统.docx》由会员分享,可在线阅读,更多相关《超市数据库系统.docx(25页珍藏版)》请在冰豆网上搜索。

超市数据库系统.docx

超市数据库系统

超市数据库系统

超市数据库系统

组长:

彭国辉

小组成员:

薛超义张义刘争林

王佳琦罗建明彭凡

合肥工业大学

一、背景介绍

信息化建设是大中型超市实现可连续进展的需要 ,随着市场竞争的日益猛烈,产品的生命周期不断缩短,顾客需求的个性化化和多样化日趋明显,因此传统的规模化和标准化的经营模式难以适应现代大中型超市的连续进展的要求。

为适应以顾客、竞争、变化为特点的外部环境,大中型超市必须加强信息化建设,通过构建企业内部信息治理系统和统一化的服务操作平台,将供应商、顾客、物流以及银行等各环节一体化整合起来,构成一个商别牺链网络,将爱好、爱好、购买力和购买习性相同或相近的顾客整合为定性的虚拟社群,并为其提供个性化的产品与服务,形成超巾忠诚的消费群。

比外,超市通过顾客治理信息系统和商品销售系统来综合估量客户需求,合理配置资源,使资源在网络上合理流淌来缩短运转周期,降低库存,并通过网上 自助交易方式来降低运营成本 ,开拓新的市场,制造新的商机 实现大中型超市可连续进展。

二、需求分析

2.1、超市的组织机构情形

一样的超市有总经理假设干名,每个总经理管辖一个部门〔销售部、采购部、仓储部、财务部、人事部〕;各部门对应相应的职能,例如,销售部治理商品销售情形,推销新产品等,商品治理就要对商品的库存量,销售量,毛利等分析。

2.2、调查相关部门的业务活动情形

2.2.1、采购部

采购部第一是要选择合作的供应商;选择与超市消费者消费需求相匹配的;协商与供应商采购的最有利条件(包括超市采购商品的质量、包装、品牌、折扣、价格、广告赞助、促销方法、订货方法、订货数量、交货期限及送货地点等);与超市各卖场做好最有效的沟通,确保各超市门店的商品畅销等。

 

2.2.2、仓储部

仓储部负责所有物品的保管工作,必须做出出入库详细的明细,对物品的出入库要及时验收、登记帐簿,做到帐物相符;及时向采购员报告物品库存情形,提出物品采购打算,对采购回来的物品进行验质检量;保管员签字验收合格后的物品的数量和质量由保管员负责;负责仓库每月盘点的顺利进行、实物的盘存工作顺利进行。

2.2.3、销售部

负责制订分解经营指标打算、制订总体营销策略;负责各个时期经营策略、营销运作方式、促销活动方案的策划,并会同采购部、中心店组织安排实施;负责建立、实施经营目标治理责任制,按月、季度、年度进行考核;负责对供货商资信进行考察、合同审定、物价审核及相关材料存档治理工作。

2.2.4、人事部

超市人事部门负责职员结构总体的规划及事实上施、招录职员、培训职员、奖励或惩处职员、超市内部职员的流淌、职员的工资治理、职员的考核以及职员的职称治理等方面;岗位职责中涉及了人事部总监、人事部经理、人事部主管、聘请专员、薪酬福利专员等中高基层工作人员的岗位。

2.3、要紧用户对系统的要求

2.3.1、总经理

a、信息要求

总经理需要了解超市损益情形,销售额,各种商品的销售量及库存量,制定商品采购战略;部门业绩,职员绩效;对顾客购买适应分析,需要顾客购买信息表。

b、处理要求

当有职员晋升时,有权更新职员信息;部门调整时,有权更新部门相关信息。

2.3.2、部门主管

a、信息要求

各部门主管需明白本部门成员信息,业绩情形;采购部主管、销售部主管和仓储部还要了解各种商品销售量、库存量、缺失量;人事部主管需有所有的职员信息、人员岗位分布情形;财务部主管需商品销售信息,商品采购信息,人职员资福利情形;采购部主管需要供应商的相关信息,比如供应商提供商品的价格,数量等。

b、处理要求

各主管能够部分修改本部门相关信息,比如联系,部门人数,部门地址,本部门人员详细信息;人事部主管有增加或删除职工的权力;仓储部主管能够增加商品记录,修改缺失单,上架单等;销售部主管能够更新物资售出单,更换商品售价,打折,会员价等商品信息。

2.3.3、职员

a、信息要求

职员能够查到自己的个人信息,例如,月工资,奖金,职位等;因职位的不同,权限也相应不。

b、处理要求

职员对自己的个人信息能够修改,如联系,银行账号,住址等。

2.3.4、顾客

a、信息要求

那个地点的顾客要紧指超市会员,会员能够查看自己买了哪些商品,相关费用,剩多少积分等差不多信息;顾客还能够了解超市商品的价格以及新产品上架,折扣等商品信息。

b、处理要求

会员能够对自己的银行账号、联系、住址做更新操作。

2.4、数据字典

Member〔会员表〕

列名

数据类型

约束条件

说明

MemID

Varchar〔20〕

主键,非空

会员卡号

MemName

Varchar〔10〕

非空

会员名

Sex

Varchar〔5〕

-

会员性别

Age

SmallInt

-

会员年龄

BankNumber

Varchar〔20〕

-

银行卡号

Integral

Int

非空

积分

Customer〔顾客表〕

列名

数据类型

约束条件

说明

SerialNumber

Varchar〔20〕

主键,非空

流水号

EmNo

Char(6)

非空

职员号

IsMem

Bit

非空

是否是会员

Payment

Varchar〔20〕

非空

付款方式

PurTime

Datetime

非空

购买时刻

Goods_Customer〔顾客-商品表〕

列名

数据类型

约束条件

说明

SerialNumber

Varchar〔20〕

主键,非空

流水号

GoodsID

Varchar〔20〕

主键,非空

商品编号

EmployeeInfo(职员表)

列名

数据类型

约束

说明

EmployeeNo

Char(6)

主键,非空

职员号

EmployeeName

Varchar(8)

非空

职员名

PostNo

Char(6)

外码

职位代码

Birth

datetime

-

出生日期

Tel

Numbereric(10,0)

非空

联系方式

DepartmentNo

Char(6)

外码

部门号

IDCard

Numbereric(18,0)

非空

身份证号

BankNo

Numbereric(20,0)

-

银行账号

Seniority

Int

非空

工龄

DepartmentInfo〔部门表〕

列名

数据类型

约束

说明

DepartmentNo

Char(6)

主键,非空

部门号

DepartmetName

Varchar(8)

非空

部门名

Tel

Char(11)

非空

联系

PeopleCount

Int

-

部门人数

CashierCustomer〔收银员-顾客表〕

列名

数据类型

约束

说明

SerialNumber

Varchar(20)

主键,非空

流水号

CashierNumber

Char(6)

主键,非空

收银员编号

Satisfaction

Int

-

中意度

PostInfo〔职称表〕

列名

数据类型

约束

说明

PostNo

Char(6)

主键,非空

职称代码

PostName

Varchar(8)

非空

职称名

Wage

Money

非空

工资

Supplierinfo〔供应商〕

列名

数据类型

约束

说明

SupNumber

Char(10)

主键,非空

供应商编号

SupName

Char(20)

非空

供应商名

SupAdd

Varchar(50)

-

供应商地址

Prin

Char(10)

-

负责人

SupPhone

Numbereric(18,0)

-

供应商

Goodsinfo〔商品〕

列名

数据类型

约束

说明

GoodsNumber

Char(10)

主键,非空

商品编号

GoodsName

Char(20)

非空

商品名

Price

Money

非空

价格

Category

Char(10)

非空

类别

Discount

Money

-

折扣

VIPPrice

Money

-

会员价

 

Supplier-Goodsinfo〔供应商-商品〕

列名

数据类型

约束

说明

SupNumber

Char(10)

主键,非空

供应商编号

GoodsNumber

Char(10)

主键,非空

商品编号

Bid

Money

-

进价

GoodsAmo

float

-

物资数量

Stowageinfo〔仓库〕

列名

数据类型

约束

说明

StoNumber

Char(10)

主键,非空

仓库编号

Volume

Float

非空

库容量

Type

Varchar(10)

-

类型

StoPrin

Char(10)

非空

仓库负责人

 

Stowage-Goodsinfo〔仓库-商品〕

列名

数据类型

约束

说明

StoNumber

Char(10)

主键,非空

仓库编号

Category

Char(10)

主键,非空

类别

Amount

float

-

数量

PurDate

date

-

入库日期

 

2.5、数据流图

图1顶层数据流图

图2会员数据流

 

图3商品治理数据流

图4职员治理数据流

图5销售治理数据流

 

三、概念结构设计

3.1、分E-R图设计

3.2、总E-R图设计

 

四、逻辑结构设计

4.1、E-R图向关系模型转换

职员EmployeeInfo〔EmNo,EmName,PostNo,Birth,Tel,DepartNo,IDCard,BankNo,InOffice〕

部门DepartmentInfo〔DepartNo,DepartName,Tel,Count,HeadNo〕

职位PostInfo〔PostNo,PostName,Wage〕

会员Member〔MemID,MemName,Sex,Age,BankNum,Integral〕

顾客Customer〔SerialNum,EmNo,IsMem,Payment,PurTime〕

会员-顾客Member_Customer〔SerialNum,IsMem,MemID〕

顾客-商品Goods_Customer〔SerialNum,GoodsID〕

供应商Supplierinfo〔SupNum,SupName,SupAdd,Prin,SupPhone〕

商品Goodsinfo〔GoodsNum,GoodsName,Price,Category,Discount,VIPPrice〕

供应商-商品Supplier-Goodsinfo〔SupNum,GoodsNum,Bid,GoodsAmo〕

仓库Stowageinfo〔StoNum,Volume,******,StoPrin〕

仓库-商品Stowage-Goodsinfo〔StoNum,Category,Amount,PurDate〕

注:

下划线标注的属性为主码,以上关系模式均为BCNF。

4.2、用户子模式

顾客{流水号,收银员编号,商品名,价格,折扣,中意度}

职员{职员编号,职员名,职位编号,职位名,工资,工龄}

仓库主管{仓库编号,类别,库存,容量,负责人,入库日期}

部门主管{部门编号,部门名,部门人数,职员编号,职员名,职位编号,职位名,工资,工龄}

五、物理结构设计

5.1、关系模式存取方法

在职员表(EployeeInfo)属性列EmployeeNumber上建立B+树索引,会员表〔Member〕属性列Member建立B+树索引;在商品表〔GoodsInfo〕属性列SubNumber上建立聚簇存取方法。

5.2、储备结构

六、数据库实施

6.1、建表

供应商:

CREATETABLESupplier(

SupplierNumberCHAR(10)NOTNULLUNIQUE,

SupplierNameCHAR(20)NOTNULL,

SupplierAddressVARCHAR(50),

PrincipalCHAR(10),

SupplierPhoneNUMERIC(18,0),

PRIMARYKEY(SupplierNumber)

);

商品:

CREATETABLEGoods(

GoodsNumberCHAR(10)NOTNULLUNIQUE,

GoodsNameCHAR(20)NOTNULL,

PriceMONEYNOTNULL,

CategoryCHAR(10)NOTNULL,

DiscountMONEY,

VIPpriceMONEY,

PRIMARYKEY(GoodsNumber)

);

供应商—商品:

CREATETABLESupplierGoods(

SupplierNumberCHAR(10)NOTNULL,

GoodsNumberCHAR(10)NOTNULL,

BidMONEY,

GoodsAmountFLOAT,

PRIMARYKEY(SupplierNumber,GoodsNumber),

CONSTRAINTC1FOREIGNKEY(SupplierNumber)REFERENCESSupplier(SupplierNumber),

CONSTRAINTC2FOREIGNKEY(GoodsNumber)REFERENCESGoods(GoodsNumber)

);

仓库:

CREATETABLEStowage(

StowageNumberCHAR(10)NOTNULLUNIQUE,

VolumeFLOATNOTNULL,

StowagePrincipalCHAR(10)NOTNULL,

PRIMARYKEY(StowageNumber)

);

仓库—商品:

CREATETABLEStowageGoods(

StowageNumberCHAR(10)NOTNULL,

CategoryCHAR(10)NOTNULL,

AmountFLOAT,

PurchaseDateDATETIME,

PRIMARYKEY(StowageNumber,Category),

CONSTRAINTC3FOREIGNKEY(StowageNumber)REFERENCESStowage(StowageNumber)

);

会员:

CREATETABLEMember(

MemberIDVARCHAR(20)NOTNULLUNIQUE,

NameVARCHAR(10)NOTNULL,

SexVARCHAR(5),

AgeSMALLINT,

AccountVARCHAR(20),

IntegralINTNOTNULL,

PRIMARYKEY(MemberID)

);

顾客:

CREATETABLECustomer(

SerialNumberVARCHAR(20)NOTNULLUNIQUE,

IsMemberCHAR(5)NOTNULL,

PaymentVARCHAR(20)NOTNULL,

PurchaseTimeDATETIMENOTNULL,

PRIMARYKEY(SerialNumber)

);

商品—顾客:

CREATETABLEGoodsCustomer(

SerialNumberVARCHAR(20)NOTNULL,

GoodsNumberCHAR(10)NOTNULL,

GoodsAmontFLOAT,

PRIMARYKEY(SerialNumber,GoodsNumber),

CONSTRAINTC4FOREIGNKEY(SerialNumber)REFERENCESCustomer(SerialNumber),

CONSTRAINTC5FOREIGNKEY(GoodsNumber)REFERENCESGoods(GoodsNumber)

);

职位:

CREATETABLEPost(

PostNumberCHAR(6)NOTNULLUNIQUE,

PostNameVARCHAR(8)NOTNULL,

WageMONEYNOTNULL,

PRIMARYKEY(PostNumber)

);

部门:

CREATETABLEDepartment(

DepartmentNumberCHAR(6)NOTNULLUNIQUE,

DepartmentNameVARCHAR(8)NOTNULL,

TelCHAR(11)NOTNULL,

PeopleCountINT,

PRIMARYKEY(DepartmentNumber)

);

职员:

CREATETABLEEmployment(

EmployeeNumberCHAR(6)NOTNULLUNIQUE,

EmployNameVARCHAR(8)NOTNULL,

PostNumberCHAR(6),

BirthDATETIME,

TelNUMERIC(10,0)NOTNULL,

DepartmentNumberCHAR(6),

IDcardNUMERIC(18,0)NOTNULL,

BankNumberNUMERIC(20,0),

SeniorityINTNOTNULL,

PRIMARYKEY(EmployeeNumber),

CONSTRAINTC6FOREIGNKEY(PostNumber)REFERENCESPost(PostNumber),

CONSTRAINTC7FOREIGNKEY(DepartmentNumber)REFERENCESDepartment(DepartmentNumber)

);

收银员—顾客:

CREATETABLECashierCustomer(

SerialNumberVARCHAR(20)NOTNULLUNIQUE,

CashierNumberCHAR(6)NOTNULL,

SatisfactionINT,

PRIMARYKEY(SerialNumber,CashierNumber),

CONSTRAINTC9CHECK(SatisfactionBETWEEN5AND10),

CONSTRAINTC10FOREIGNKEY(SerialNumber)REFERENCESCustomer(SerialNumber),

CONSTRAINTC11FOREIGNKEY(CashierNumber)REFERENCESEmployment(EmployeeNumber)

);

各表之间的关系:

6.2、数据载入

注:

在数据库中已输入

6.3、设计视图

顾客视图:

CREATEVIEW顾客

AS

SELECTdbo.Customer.SerialNumber,dbo.CashierCustomer.CashierNumber,dbo.GoodsCustomer.GoodsNumber,dbo.Goods.GoodsName,dbo.Goods.Price,

dbo.Goods.Discount,dbo.CashierCustomer.Satisfaction

FROMdbo.CashierCustomerINNERJOIN

dbo.CustomerONdbo.CashierCustomer.SerialNumber=dbo.Customer.SerialNumberINNERJOIN

dbo.GoodsCustomerONdbo.Customer.SerialNumber=dbo.GoodsCustomer.SerialNumberINNERJOIN

dbo.GoodsONdbo.GoodsCustomer.GoodsNumber=dbo.Goods.GoodsNumberSELECTdbo.Customer.SerialNumber,dbo.CashierCustomer.CashierNumber,dbo.GoodsCustomer.GoodsNumber,dbo.Goods.GoodsName,dbo.Goods.Price,

dbo.Goods.Discount,dbo.CashierCustomer.Satisfaction

FROMdbo.CashierCustomerINNERJOIN

dbo.CustomerONdbo.CashierCustomer.SerialNumber=dbo.Customer.SerialNumberINNERJOIN

dbo.GoodsCustomerONdbo.Customer.SerialNumber=dbo.GoodsCustomer.SerialNumberINNERJOIN

dbo.GoodsONdbo.GoodsCustomer.GoodsNumber=dbo.Goods.GoodsNumber

职员视图:

CREATEVIEW职员

AS

SELECTTOP100PERCENTdbo.Employment.EmployeeNumber,dbo.Employment.EmployName,dbo.Post.PostNumber,dbo.Post.PostName,dbo.Post.Wage,

dbo.Employment.Seniority

FROMdbo.EmploymentINNERJOIN

dbo.PostONdbo.Employment.PostNumber=dbo.Post.PostNumber

ORDERBYdbo.Employment.EmployeeNumber

仓库主管视图:

CREATEVIEW仓库主管

AS

SELECTTOP100PERCENTdbo.Stowage.StowageNumber,dbo.StowageGoods.Category,dbo.StowageGoods.Amount,dbo.Stowage.Volume,dbo.StowageGoods.PurchaseDate,

dbo.Stowage.StowagePrincipal

FROMd

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1