Mysql 设计超市经营管理系统,包括员工库存表(stock) 和 仓库表(warehouse)
互联网技术学院周测机试题(三)
一、需求分析
为进一步完善连锁超市经营管理,提高管理效率,减少管理成本,决定开发一套商品管理系统,用于日常的管理。本系统分为商品管理、员工管理、店铺管理,库存管理等功能模块。本次开发,主要针对库存管理功能,具备显示各类商品库存量、进货管理等功能,具体数据库设计如下,请你根据需求完成数据库的设计与相应功能。
二、数据字典
表1:库存表(stock)
|
序号 |
字段名 |
说明 |
数据类型 |
约束 |
备注 |
|
1 |
Sid |
库存编号 |
Int |
主键,自动增长 |
|
|
2 |
Goodsname |
商品名称 |
Varchar |
长度50,非空 |
|
|
3 |
Num |
库存数量 |
Int |
||
|
4 |
Wid |
仓库编号 |
Int |
外键,引用仓库表的主键 |
|
|
5 |
Title |
注意事项 |
Varchar |
长度20 |
CREATE TABLE stock(
sid int PRIMARY KEY auto_increment,
goodsname VARCHAR(50) NOT NULL,
num int,
wid int,
CONSTRAINT fk_wid FOREIGN KEY(wid) REFERENCES warehouse(wid),
title VARCHAR(20) NOT NULL
);
表2:仓库表(warehouse)
|
序号 |
字段名 |
说明 |
数据类型 |
约束 |
备注 |
|
1 |
wid |
仓库编号 |
Int |
主键,自动增长 |
|
|
2 |
wname |
仓库名称 |
Varchar |
长度20,非空 |
CREATE TABLE warehouse(
wid int PRIMARY KEY auto_increment,
wname VARCHAR(20) NOT NULL
);
测试数据
stock表:
|
Sid |
Goodsname |
Num |
Wid |
Title |
|
1 |
飞利浦SP100净化器 |
20 |
1 |
贵重商品 |
|
2 |
山东红富士苹果(一级果) |
60 |
3 |
快消商品 |
|
3 |
康师傅桶装方便面(红烧牛肉面) |
100 |
2 |
快消商品 |
|
4 |
格力NS-8823变频空调 |
10 |
1 |
库存较少 |
|
5 |
泰国山竹特级 |
150 |
3 |
临近保质期 |
INSERT INTO `stock` VALUES (1, '飞利浦SP100净化器', 20, 1, '贵重商品');
INSERT INTO `stock` VALUES (2, '山东红富士苹果(一级果)', 60, 3, '快消商品');
INSERT INTO `stock` VALUES (3, '康师傅桶装方便面(红烧牛肉面)', 100, 2, '快消商品');
INSERT INTO `stock` VALUES (4, '格力NS-8823变频空调', 10, 1, '库存较少');
INSERT INTO `stock` VALUES (5, '泰国山竹特级', 150, 3, '临近保质期');
warehouse:
|
wid |
wname |
|
1 |
华北1号仓库 |
|
2 |
华北2号仓库 |
|
3 |
华南2号仓库 |
INSERT INTO `warehouse` VALUES (1, '华北1号仓库');
INSERT INTO `warehouse` VALUES (2, '华北2号仓库');
INSERT INTO `warehouse` VALUES (3, '华南2号仓库');
三、功能实现
1、在华南2号仓库增加30辆捷安特BT22自行车,注意事项为贵重商品。
INSERT INTO stock VALUES(null,'捷安特BT22自行车',30,3,'贵重商品')
2、显示华北所有仓库的商品名称与库存数量。
SELECT wname,goodsname,num FROM stock s,warehouse w WHERE s.wid=w.wid AND wname LIKE '华北%'
3、统计各仓库的库存商品总量,显示仓库名称和库存商品总量。
SELECT wname,SUM(num) FROM stock s,warehouse w WHERE s.wid=w.wid GROUP BY wname
4、修改泰国山竹特级销售100KG后,剩余的库存量。
UPDATE stock SET num=(num-100) WHERE goodsname='泰国山竹特级'
5、更改康师傅桶装方便面(红烧牛肉面)的仓库名称为“华北4号仓库”。
UPDATE warehouse SET wname='华北4号仓库' WHERE wid=(SELECT wid FROM stock
WHERE goodsname='康师傅桶装方便面(红烧牛肉面)')
数据库完整导入代码:
-- ----------------------------
-- Table structure for stock
-- ----------------------------
DROP TABLE IF EXISTS `stock`;
CREATE TABLE `stock` (
`sid` int(11) NOT NULL AUTO_INCREMENT,
`goodsname` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`num` int(11) NULL DEFAULT NULL,
`wid` int(11) NULL DEFAULT NULL,
`title` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
PRIMARY KEY (`sid`) USING BTREE,
INDEX `fk_wid`(`wid`) USING BTREE,
CONSTRAINT `fk_wid` FOREIGN KEY (`wid`) REFERENCES `warehouse` (`wid`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of stock
-- ----------------------------
INSERT INTO `stock` VALUES (1, '飞利浦SP100净化器', 20, 1, '贵重商品');
INSERT INTO `stock` VALUES (2, '山东红富士苹果(一级果)', 60, 3, '快消商品');
INSERT INTO `stock` VALUES (3, '康师傅桶装方便面(红烧牛肉面)', 100, 4, '快消商品');
INSERT INTO `stock` VALUES (4, '格力NS-8823变频空调', 10, 1, '库存较少');
INSERT INTO `stock` VALUES (5, '泰国山竹特级', 50, 3, '临近保质期');
-- ----------------------------
-- Table structure for warehouse
-- ----------------------------
DROP TABLE IF EXISTS `warehouse`;
CREATE TABLE `warehouse` (
`wid` int(11) NOT NULL AUTO_INCREMENT,
`wname` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
PRIMARY KEY (`wid`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of warehouse
-- ----------------------------
INSERT INTO `warehouse` VALUES (1, '华北1号仓库');
INSERT INTO `warehouse` VALUES (2, '华北2号仓库');
INSERT INTO `warehouse` VALUES (3, '华南2号仓库');
INSERT INTO `warehouse` VALUES (4, '华北4号仓库');
Mysql 设计超市经营管理系统,包括员工库存表(stock) 和 仓库表(warehouse)的更多相关文章
- Mysql 设计超市经营管理系统,包括员工信息表(employee)和 员工部门表(department)
互联网技术学院周测机试题(二) 一.需求分析 为进一步完善连锁超市经营管理,提高管理效率,减少管理成本,决定开发一套商品管理系统,用于日常的管理.本系统分为商品管理.员工管理.店铺管理,库存管理等功能 ...
- Mysql 设计超市经营管理系统,包括商品信息表(goods) 和 商品类型表(goodstype)
互联网技术学院周测机试题(一) 一 需求分析 为进一步完善连锁超市经营管理,提高管理效率,减少管理成本,决定开发一套商品管理系统,用于日常的管理.本系统分为商品管理.员工管理.店铺管理,库存管理等功 ...
- mySQL (关系型数据库管理系统)
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RD ...
- java超市购物管理系统
一.概述 1.鹏哥前面有写过java项目超市管理系统项目,传送门 2.收到很多朋友私信给我,也很感谢老铁们的反馈和交流,前面这个项目只是对java基础知识和面向对象的思想练习,但是没有涉及到java如 ...
- MySQL 设计与开发规范
MySQL 设计与开发规范 1 目的 本规范的主要目的是希望规范数据库设计与开发,尽量避免由于数据库设计与开发不当而产生的麻烦:同时好的规范,在执行的时候可以培养出好的习惯,好的习惯是软件质量的很好保 ...
- 基于Spring MVC + Spring + MyBatis的【超市会员管理系统】
资源下载: https://download.csdn.net/download/weixin_44893902/22035329 一. 语言和环境 实现语言:JAVA语言. 使用:MyEclipse ...
- smdms超市订单管理系统之登录功能
一.超市订单管理系统准备阶段 Supermarket order management system 创建数据库 数据库代码放置如下 点击查看数据库address代码 CREATE TABLE `sm ...
- MYSQL设计优化
本文将从各方面介绍优化mysql设计的一些方式. 1.优化sql语句 (1)定位须要优化的sql语句 1)show status统计SQL语句频率 对Myisam和Innodb存储引擎都计数的參数: ...
- Java课程设计——学生成绩管理系统(201521123003 董美凤)
Java课程设计--学生成绩管理系统(201521123003 董美凤) 1.团队课程设计博客链接 学生成绩管理系统博客链接 2.个人负责模块或任务说明 信息修改 密码修改 部分界面设计 3.自己的代 ...
随机推荐
- 高效读取大文件,再也不用担心 OOM 了!
内存读取 第一个版本,采用内存读取的方式,所有的数据首先读读取到内存中,程序代码如下: Stopwatch stopwatch = Stopwatch.createStarted(); // 将全部行 ...
- 字节数与字符数mysql_mysql里一个中文汉字占多少字节数?
在mysql中,如果是latin1字符集下,一个中文汉字占2个字节数:如果是utf8字符集下,一个中文汉字占3个字节数:如果是gbk字符集下,一个中文汉字占2个字节数. mysql各字符集下汉字和字母 ...
- mysql删除数据后不释放空间问题
如果表的引擎是InnoDB,Delete From 结果后是不会腾出被删除的记录(存储)空间的. 需要执行:optimize table 表名; eg:optimize table eh_user_b ...
- sax方式解析XML学习笔记
原理:对文档进行顺序扫描,当扫描到文档(document)开始与结束,元素开始与结束.文档结束等地方 通知事件处理函数,由事件处理函数相应动作然后继续同样的扫描,直至文档结束. 优点:消耗资源比较少: ...
- Linux系统下部署eleasticsearch+kibana
1.官网下载eleasticsearch和kibana,两个版本应安装一致,否则会出现kibana连接不上eleasticsearch的情况(这里我以6.3.1为例) eleasticsearch的下 ...
- javascript将平行的拥有上下级关系的数据转换成树形结构
转换函数 var Littlehow = {}; /** * littlehow 2019-05-15 * 平行数据树形转换器 * @type {{format: tree.format, sort: ...
- 【C/C++】BanGDream活动点数计算器
作为一个白嫖咸鱼,我每个活动都只打出三星卡就不玩了,于是写了一个模拟器,算算还要打几把hhh #include <iostream> #include <algorithm> ...
- tcache poisoning(爆破stout获得libc并且熟练使用了realloc)
这道题目帮助我学习了realloc这个函数,是一道十分经典的题目,我会尽量的把exp的每一步都说清楚 例行检查我就不放了 讲程序放入ida中 比较简单的流程,没有show功能,所有我们需要通过爆破st ...
- 新建日历(Project)
<Project2016 企业项目管理实践>张会斌 董方好 编著 默认的标准日历设置好了以后,问题又来了:出现某些特殊的原因,可能还需要一个与标准日历设置不同的日历,这个可怎么弄? 没关系 ...
- 对ORM的理解
1. 在面试中可能会问到这个问题,什么是ORM? ORM是对象关系映射(Object Relational Mapping),简称ORM,或O/RM,或O/R mapping,是一种程序技术. 白话理 ...