JavaWeb-Mysql篇 1-6 数据库设计(简介、多表关系实现、案例)

1、数据库设计简介

1.1软件研发步骤
在这里插入图片描述

1.2数据库设计概念

  • 数据库设计就是根据业务系统的具体需求,结合我们选用的DBMS,为这个业务系统构造出最优的数据存储模型。
  • 建立数据库中的表结构以及表与表之间的关联关系的过程。

具体而言就是,有哪些表?表里有哪些字段?表和表之间有什么关系?

1.3 数据库设计的步骤

  • 需求分析:数据是什么?数据有哪些属性?数据与属性的特点是什么?
  • 逻辑分析:通过ER图对数据库进行逻辑建模,不需要考虑我们所选用的数据库管理系统。
  • 物理设计:根据数据库自身的特点把逻辑设计转换成物理设计。
  • 维护设计:1.对新的需求进行建表 2.表优化

2、表关系(1对1,1对多(多对1),多对多)

1对1

  • 用户和用户详情
    在这里插入图片描述

1对多(多对1)

  • 如部门和员工
  • 一个部门对应多个员工,一个员工对应一个部门

多对多

  • 如商品和订单
  • 一个商品对应多个订单,一个订单包含多个商品

在这里插入图片描述

3、表关系之一对多

在这里插入图片描述

5、表关系之多对多

在这里插入图片描述
实践–表的链接关系的建立

-- 表的多对多关系实现

DROP TABLE IF EXISTS tb_order;
DROP TABLE IF EXISTS tb_goods;

-- 订单表
CREATE TABLE tb_order(
	id int PRIMARY KEY auto_increment,
	payment DOUBLE(10,2),
	payment_type TINYINT,
	status TINYINT
);

-- 商品表
CREATE TABLE tb_goods(
	id int PRIMARY KEY auto_increment,
	title VARCHAR(100),
	price DOUBLE(10,2)
);

-- 订单商品中间表
CREATE TABLE tb_order_goods(
	id int PRIMARY KEY auto_increment,
	order_id int,
	goods_id int,
	count int
);

-- 建完表后,添加外键
ALTER TABLE tb_order_goods ADD CONSTRAINT fk_order_id FOREIGN KEY(order_id) REFERENCES tb_order(id);
ALTER TABLE tb_order_goods ADD CONSTRAINT fk_goods_id FOREIGN KEY(goods_id) REFERENCES tb_goods(id);

运行完后,点击对象,选中三个表,右键选择逆向表到模型。
可视化三个表的链接关系。
在这里插入图片描述

6、表关系之一对一

在这里插入图片描述

7、数据库设计案例

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值