参考:https://blog.csdn.net/u013144287/article/details/79024130

自己在项目中写的实例:

‘实体’和‘公理’具有多对多关系,即一个实体可以对应多个公理,一个公理也可以包含多个实体。

多对多关系需要一张纽带表来实现。

// 实体表格create table if not exists `entity_management`
(`id`          int unsigned                                            NOT NULL AUTO_INCREMENT COMMENT 'id',`entity_string` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '实体字符串',`entity_type`   varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '实体类型',`create_time` timestamp                                               NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',`update_time` timestamp                                               NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',PRIMARY KEY (`id`),UNIQUE KEY `entity_management_name_uindex` (`entity_string`)
) ENGINE = InnoDBDEFAULT CHARSET = utf8mb4;# // 公理表格,公理表示实体之间的关系。实体和公理之间存在多对多关系
create table if not exists `axiom_management`
(`id`          int unsigned                                            NOT NULL AUTO_INCREMENT COMMENT 'id',`axiom_string` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '公理对应字符串',`create_time` timestamp                                               NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',`update_time` timestamp                                               NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',PRIMARY KEY (`id`),UNIQUE KEY `entity_management_name_uindex` (`axiom_string`)
) ENGINE = InnoDBDEFAULT CHARSET = utf8mb4;# // 实体和公理之间的纽带表
create table if not exists `EntityMapAxiom_management`
(`id`          int unsigned                                            NOT NULL AUTO_INCREMENT COMMENT '关系id',`entity_id`   int unsigned                                            NOT NULL AUTO_INCREMENT COMMENT '实体id',`axiom_id`   int unsigned                                            NOT NULL AUTO_INCREMENT COMMENT '公理id',`create_time` timestamp                                               NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',`update_time` timestamp                                               NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',PRIMARY KEY (`id`),KEY `entity_id` (`entity_id`),KEY `axiom_id`(`axiom_id`),CONSTRAINT `entity_id` FOREIGN KEY (`entity_id`) REFERENCES `entity_management`(`id`),CONSTRAINT `axiom_id` FOREIGN KEY (`axiom_id`) REFERENCES `axiom_management`(`id`)
) ENGINE = InnoDBDEFAULT CHARSET = utf8mb4;

数据库一对一 一对多 多对多关系相关推荐

  1. SQLAlchemy_定义(一对一/一对多/多对多)关系

    SQLAlchemy_定义(一对一/一对多/多对多)关系 目录 Basic Relationship Patterns One To Many One To One Many To Many Basi ...

  2. Python进阶----表与表之间的关系(一对一,一对多,多对多),增删改查操作

    Python进阶----表与表之间的关系(一对一,一对多,多对多),增删改查操作,单表查询,多表查询 一丶表与表之间的关系 背景: ​ ​ ​  ​ ​ 由于如果只使用一张表存储所有的数据,就会操作数 ...

  3. 7. MyBatis多表查询 - 一对一 - 一对多 - 多对多

    7. MyBatis多表查询 - 一对一 - 一对多 - 多对多 前言 在前面的篇章,我们已经熟悉了单表查询,下面我们来看看如何进行 多表查询. 数据准备 create database if not ...

  4. mybatis的一对一 一对多 多对多

    mybatis的一对一 一对多 多对多 1.表 2.建表语句 order_t表 CREATE TABLE `order_t` ( `id` int(11) NOT NULL, `user_id` in ...

  5. 数据库设计中,多对多关系使用使用逗号分割关联讨论

    进公司一个月,发现公司很多人喜欢用逗号分割,去存储其它表的主键,做多对多关联,但存在很多乱用现象.这里对这种方式做了下总结. 在传统数据库设计中,多对多关系存储通常都是用一张中间表来简历两张表的关系. ...

  6. 数据库外键:一对多/多对多关系

    数据库事务四大特性ACID: 原子性(Atomicity) 一致性(Consistency) 隔离性(Isolation) 持久性(Durability) 基于原子性对存在重复数据的表进行拆分 一对多 ...

  7. day 69-70 一对一 一对多 多对一联表查询

    day 69 orm操作之表关系,多对多,多对一多对一/一对多,多对多{类中的定义方法}day691. 昨日内容回顾1. 单表增删改查2. 单表查询API返回QuerySet对象的:1. .all() ...

  8. JPA 一对一 一对多 多对一 多对多配置

    1 JPA概述 1.1 JPA是什么 JPA (Java Persistence API) Java持久化API.是一套Sun公司 Java官方制定的ORM 方案,是规范,是标准 ,sun公司自己并没 ...

  9. Django一对一 ,一对多,多对多

    Django 数据库一对多,多对多 目录 app01/models.py app01/views.py app01/urls.py Python_Django/urls.py 目录 app01/mod ...

最新文章

  1. Go语言的错误异常处理机制及其应用
  2. 同一列两行数据怎么合并成一行_经常加班怎么办?两分钟学会这4招,让同事刮目相看!...
  3. 力扣501. 二叉搜索树中的众数(JavaScript)
  4. [转载]SELinux安全系统基础
  5. Avast! 4 Server 服务器版license许可文件获得方法
  6. 大数据导论答案_《数据科学与大数据通识导论》题库及答案
  7. 如何让Word表格文字上下居中?
  8. linux stm32 虚拟串口驱动安装,stm32的usb虚拟串口驱动win7系统64位和32位不能正常安装的解决办法!stm32 virtual comport win7(终极解决办法)...
  9. Android-在线视频播放器实现
  10. 全球重力场模型数据下载
  11. Vue入门练习:小王记事本
  12. PowerPoint用VBA添加背景图片
  13. MATLAB符号计算总结
  14. idea的language level含义和module的language level自动跳到5
  15. Oracle12C SGA PGA UGA
  16. 芯片IC附近为什么放0.1uF的电容?难道1uF不行吗?
  17. 二维拉普拉斯方程的极坐标形式
  18. Dism++ 一款传说中“老司机”都爱用的系统工具,使用简介
  19. windows中安装SSH Secure Shell Client传输软件
  20. html和sketch文件转换,GitHub - 332065255/sketch-to-html: 从 sketch 转换成 html,我开始更新了.....

热门文章

  1. Win32_11程序员求爱的创意程序——升级版^_^
  2. pcl_viewer类
  3. ToDesk:一款大小仅为5M的免费远程控制软件,为什么备受好评?
  4. python提升算法2_XGBOOST_docs_Python使用英译汉
  5. 通过unity画弧线
  6. Chrome好用的插件:Wappalyzer 检测网站使用的技术
  7. IT项目管理中风险控制的4个重要步骤
  8. HttpServletResponse对象实现文件下载
  9. 哪里能找到安全应急类的管家?
  10. css中div阴影,圆形边角等的使用和案例