Mysql 设计超市经营管理系统,包括员工信息表(employee)和 员工部门表(department)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: Mysql 设计超市经营管理系统,包括员工信息表(employee)和 员工部门表(department)

互联网技术学院周测机试题(二)

 

一、需求分析

为进一步完善连锁超市经营管理,提高管理效率,减少管理成本,决定开发一套商品管理系统,用于日常的管理。本系统分为商品管理、员工管理、店铺管理,库存管理等功能模块。本次开发,主要针对员工管理功能,具备查询员工信息、删除或修改员工信息等功能,具体数据库设计如下,请你根据需求完成数据库的设计与相应功能。


二、数据字典


表1:员工信息表(employee)


53.png


CREATE TABLE employee(
empid int PRIMARY KEY auto_increment,
empname VARCHAR(10) NOT NULL,
phone VARCHAR(11),
departmentid int,
address VARCHAR(50),
CONSTRAINT fk_dptid FOREIGN KEY(departmentid) REFERENCES department(dptid)
);


表2:员工部门表(department)

54.png

CREATE TABLE department(
dptid int PRIMARY KEY auto_increment,
dptname VARCHAR(20) NOT NULL
);


测试数据

employee表:


55.png


INSERT INTO employee VALUES (1, '李华', '13737445685', 1, '武汉市洪山区光谷大道288号');
INSERT INTO employee VALUES (2, '张建国', '18725489687', 3, '北京市朝阳区安贞路127号');
INSERT INTO employee VALUES (3, '周晓', '13985647124', 2, '昆明市五华区滇缅大道');
INSERT INTO employee VALUES (4, '李莉', '15896582415', 1, '武汉市汉阳区人民中路瑞典小镇');
INSERT INTO employee VALUES (5, '张晓红', '13865486874', 3, '');


department:


56.png


INSERT INTO department VALUES (1, '客服部');
INSERT INTO department VALUES (2, '财务部');
INSERT INTO department VALUES (3, '后勤部');


三、功能实现


1、经过层层面试,来自昆明市五华区茭菱路128号的张华,电话号码为15987415824,成功入职到公司的后勤部,请实现本功能。

INSERT INTO employee VALUES (null, '张华', '15987415824', 3, '昆明市五华区茭菱路128号');


2、显示名字中含有“晓”的客户信息,显示姓名及所在部门名称。


SELECT empname,dptname FROM employee e JOIN department d ON e.departmentid=d.dptid WHERE empname LIKE '%晓%'


3、统计各部门的人数,显示部门名称及人数,并按部门人数升序排序。


SELECT dptname,COUNT(*) FROM employee e,department d WHERE e.departmentid=d.dptid GROUP BY dptname ORDER BY dptname DESC


4、显示“周晓”的个人信息,包括姓名,电话和所在部门。


SELECT empname,phone,dptname FROM employee e,department d WHERE e.departmentid=d.dptid


完善“张晓红”的家庭住址为“广州市白云区北京东路”。


UPDATE employee SET address='广州市白云区北京东路' WHERE empname='张晓红'


数据库完整导入代码:


-- ----------------------------
-- Table structure for department
-- ----------------------------
DROP TABLE IF EXISTS `department`;
CREATE TABLE `department`  (
  `dptid` int(11) NOT NULL AUTO_INCREMENT,
  `dptname` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
  PRIMARY KEY (`dptid`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of department
-- ----------------------------
INSERT INTO `department` VALUES (1, '客服部');
INSERT INTO `department` VALUES (2, '财务部');
INSERT INTO `department` VALUES (3, '后勤部');
-- ----------------------------
-- Table structure for employee
-- ----------------------------
DROP TABLE IF EXISTS `employee`;
CREATE TABLE `employee`  (
  `empid` int(11) NOT NULL AUTO_INCREMENT,
  `empname` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
  `phone` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `departmentid` int(11) NULL DEFAULT NULL,
  `address` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  PRIMARY KEY (`empid`) USING BTREE,
  INDEX `fk_dptid`(`departmentid`) USING BTREE,
  CONSTRAINT `fk_dptid` FOREIGN KEY (`departmentid`) REFERENCES `department` (`dptid`) ON DELETE RESTRICT ON UPDATE RESTRICT
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of employee
-- ----------------------------
INSERT INTO `employee` VALUES (1, '李华', '13737445685', 1, '武汉市洪山区光谷大道288号');
INSERT INTO `employee` VALUES (2, '张建国', '18725489687', 3, '北京市朝阳区安贞路127号');
INSERT INTO `employee` VALUES (3, '周晓', '13985647124', 2, '昆明市五华区滇缅大道');
INSERT INTO `employee` VALUES (4, '李莉', '15896582415', 1, '武汉市汉阳区人民中路瑞典小镇');
INSERT INTO `employee` VALUES (5, '张晓红', '13865486874', 3, '广州市白云区北京东路');
SET FOREIGN_KEY_CHECKS = 1;
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
关系型数据库 MySQL 数据库
数据安全之路:深入了解MySQL的行锁与表锁机制
数据安全之路:深入了解MySQL的行锁与表锁机制
20 1
|
1月前
|
存储 关系型数据库 MySQL
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
|
1月前
|
SQL 关系型数据库 MySQL
轻松入门MySQL:保障数据完整性,MySQL事务在进销存管理系统中的应用(12)
轻松入门MySQL:保障数据完整性,MySQL事务在进销存管理系统中的应用(12)
|
21天前
|
运维 监控 安全
云HIS医疗管理系统源码——技术栈【SpringBoot+Angular+MySQL+MyBatis】
云HIS系统采用主流成熟技术,软件结构简洁、代码规范易阅读,SaaS应用,全浏览器访问前后端分离,多服务协同,服务可拆分,功能易扩展;支持多样化灵活配置,提取大量公共参数,无需修改代码即可满足不同客户需求;服务组织合理,功能高内聚,服务间通信简练。
32 4
|
14天前
|
运维 DataWorks 关系型数据库
DataWorks产品使用合集之DataWorks还有就是对于mysql中的表已经存在数据了,第一次全量后面增量同步的步骤如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
28 2
|
1月前
|
存储 关系型数据库 MySQL
MySQL数据库性能大揭秘:表设计优化的高效策略(优化数据类型、增加冗余字段、拆分表以及使用非空约束)
MySQL数据库性能大揭秘:表设计优化的高效策略(优化数据类型、增加冗余字段、拆分表以及使用非空约束)
|
1月前
|
缓存 关系型数据库 MySQL
MySQL 查询优化:提速查询效率的13大秘籍(索引设计、查询优化、缓存策略、子查询优化以及定期表分析和优化)(中)
MySQL 查询优化:提速查询效率的13大秘籍(索引设计、查询优化、缓存策略、子查询优化以及定期表分析和优化)(中)
|
12天前
|
SQL 存储 关系型数据库
【MySQL】DDL的表操作详解:创建&查询&修改&删除
【MySQL】DDL的表操作详解:创建&查询&修改&删除
|
14天前
|
存储 SQL 关系型数据库
mysql查询数据库表大小怎么操作
mysql查询数据库表大小怎么操作
|
14天前
|
存储 SQL 关系型数据库
MySQL表的增删改查---多表查询和联合查询
MySQL表的增删改查---多表查询和联合查询