【需求描述】:
(1)超市业务按部门开展,目前该超市有采购部、销售部、运营部等,每个员工只能在一个部门;员工在入职时需要登记员工姓名、性别、出生日期、身份证、联系电话等信息。
(2)超市销售的商品由超市运营部门决定,运营部门在确定销售的商品后,录入商品的详细信息,包含:商品编码、商品名称、条形码、产地、生产厂家、规格型号、商品进价、商品销售价、当前库存数量、库存下限数量等信息。其中,规格型号直接用文本表示;商品编码自行设计编码规则,系统自动生成商品编码。当前库存数量、库存下限数量均要大于等于0。商品营运部每天结束后需要统计商品的库存情况,若商品的当前库存数量小于等于库存下限时,这些商品不再放入货架进行销售,当补充了货源后再行销售。
(3)销售部的收银员通过商场POS机完成销售,收银员通过扫描商品完成销售并记录销售流水相关信息,包含销售时间、销售商品、销售商品单价、销售商品数量、销售商品金额、销售总金额、收银员等信息。在收银员完成销售收款后,根据销售的商品数量更新销售商品的库存数量,更新算法为:该商品的当前库存数量 – 销售数量;更新后若该商品的当前库存数量小于等于该商品的库存下限数量,系统自动生成需要采购的商品信息,包含商品编码、当前库存量、生成时间等。
(4)采购部门的采购员每天统计销售后生成的采购商品信息并进行货源组织,完成商品的采购;当采购商品到货后,采购员根据到货情况完成商品的入库,在入库时需要录入商品的进货数量,更新商品的当前库存数量,更新算法为:该商品的当前库存数量 + 进货数量。
数据模型设计
1 根据需求描述,设计该系统的概念数据模型,可以用E-R图,也可以用PowerDesigner工具;(10分)
2 将设计的概念数据模型转换为关系数据库的逻辑数据模型(即转换成关系数据库的关系)。(10分)
完整性设计
数据定义操作
1 采用SQL语言完成部门、员工和商品的关系模式定义,并完成相关的完整性定义;(5分)
CREATE TABLE dept(
did INT NOT NULL PRIMARY KEY AUTO_INCREMENT,/*部门id 不空且自增长*/
dname varchar(10) UNIQUE /*部门名 唯一*/
);
CREATE TABLE emp(
eid INT NOT NULL PRIMARY KEY AUTO_INCREMENT,/*员工id 不空且自增长*/
ename varchar(10),
sex varchar(2),
birthday DATE,
sfz varchar