当前位置:   article > 正文

【星云毕设】学生餐厅优惠管理系统ER图如何画及数据表如何转换?_餐厅数据库的er图

餐厅数据库的er图

        在实际的毕业设计开发中,特别是设计阶段或写论文的时候,都离不开数据库设计,其中数据库设计最重要的就是逻辑设计阶段和物理设计阶段。逻辑设计就离不开数据库的ER图,物理设计阶段就离不开ER图到表的转换,本文章就是解决这个问题。

 

本文主要以《学生餐厅优惠管理系统》为例,全面教你如何做好数据库的ER图和转换关系。

一、画数据库ER图

 根据项目中的需求和业务场景,需要找到关系和属性,比如像《学生餐厅优惠管理系统》我找到的关系与属性如下图:

 上图我是直接把ER总图也画进去了,如果一个项目中表很多,业务很复杂,比如有7-8个表,这种就需要单独画ER总图,否则画在一起是画不全的。

二、ER图转关系表

根据上面的ER图进行表的转换,我直接把SQL写下面的,供参考学习,主要就是把属性转为字段,把关系转为表,详见下面的:

档口表

  1. CREATE TABLE dk (
  2. id int(0) NOT NULL AUTO_INCREMENT,
  3. bh varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  4. name varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  5. zmoney decimal(10, 0) NULL DEFAULT NULL,
  6. lb varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  7. mj varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  8. PRIMARY KEY (id) USING BTREE
  9. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
  10. -- ----------------------------
  11. -- 测试数据
  12. -- ----------------------------
  13. INSERT INTO dk VALUES (1, '001', '瓦香鸡米饭', 80000, '张三', '20');
  14. INSERT INTO dk VALUES (2, '002', '驴蹄子面', 75000, '李四', '18');
  15. INSERT INTO dk VALUES (3, '003', '青春麻辣烫', 60000, '王五', '16');
  16. INSERT INTO dk VALUES (4, '004', '鸡蛋灌饼', 55000, '赵六', '15');

优惠表

  1. CREATE TABLE yh (
  2. id int(0) NOT NULL AUTO_INCREMENT,
  3. bh varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  4. content varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  5. ktime varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  6. jtime varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  7. PRIMARY KEY (id) USING BTREE
  8. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
  9. -- ----------------------------
  10. -- 测试数据
  11. -- ----------------------------
  12. INSERT INTO yh VALUES (1, '001', '瓦香鸡米饭累计消费满一百积分可以享受九五折优惠', '2023——2024学年第一学期开始', '2023——2024学年第二学期结束');
  13. INSERT INTO yh VALUES (2, '002', '累计每获得五十积分可以兑换五元代金券,驴蹄子面代金券可用于众生园超市购物以及自己档口', '2023——2024学年第一学期开始', '2023——2024学年第二学期结束');
  14. INSERT INTO yh VALUES (3, '003', '一次性消费满十二元可以获得一张一元代金券,麻辣烫代金券只能用于自己档口', '2023——2024学年第一学期开始', '2023——2024学年第二学期结束');
  15. INSERT INTO yh VALUES (4, '004', '鸡蛋灌饼累计消费满八十元,购买本档口所有产品均减一元', '2023——2024学年第一学期开始', '2023——2024学年第二学期结束');

学生表

  1. CREATE TABLE student (
  2. number varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  3. name varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  4. phone varchar(11) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL
  5. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
  6. -- ----------------------------
  7. -- 测试数据
  8. -- ----------------------------
  9. INSERT INTO student VALUES ('2021151513', '张三', '16634045578');
  10. INSERT INTO student VALUES ('2021151519', '李四', '15835603866');
  11. INSERT INTO student VALUES ('2021151527', '王五, '15935759166');
  12. INSERT INTO student VALUES ('2021151546', '赵六, '16636127530');

会员表

  1. CREATE TABLE hy (
  2. id varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  3. times date NULL DEFAULT NULL,
  4. sid varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL
  5. ) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
  6. -- ----------------------------
  7. -- 测试数据
  8. -- ----------------------------
  9. INSERT INTO hy VALUES ('202300001', '2023-10-01', '银卡');
  10. INSERT INTO hy VALUES ('202300002', '2023-10-10', '铜卡');
  11. INSERT INTO hy VALUES ('202300003', '2023-11-11', '金卡');
  12. INSERT INTO hy VALUES ('202300004', '2024-03-03', '金卡');

同时为了方便同学,我把画完的图放在了:https://www.processon.com/view/6489afe642fb7c008327a3dc

需要的直接克隆修改成自己的业务就可以了,如有不明白的地方或画不出来的,也可以找我帮你指点一下。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/41723
推荐阅读
相关标签
  

闽ICP备14008679号