mysql外键

【MySQL】外键的变种 -- 2019-08-11 18:24:58

风格不统一 提交于 2019-11-27 00:02:08
原文: http://106.13.73.98/__/24/ 目录 三种关系 多对一 多对多 一对一 因为有foreign key的约束,使得两张表形成了三种关系: 多对一 多对多 一对多 重点理解如何找出两张表之间的关系 现在有A、B两张表 分析步骤: 1. 先站在A表的角度去找 :是否A表的多条记录可以对应B表的一条记录,如果是,则证明A表的一个字段 foreign key B表的一个字段(通常是id). 2. 再站在B表的角度去找 :是否B表的多条记录可以对应A表的一条记录,如果是,则证明B表的一个字段 foreign key A表的一个字段(通常是id). 3. 总结: 多对一 如果是步骤1成立,则是A表多对一B表 如果是步骤2成立,则是B表多对一A表 多对多 如果步骤1和步骤2同时成立,则证明这两张表是一个双向的多对一,即多对多,需要定义一个这两张表的关系表来专门存放二者的关系. 一对一 如果1和2都不成立,而是A表的一条记录唯一对应B表的一条记录,反之亦然。这种情况很简单,就是在A表 foreign key B表的基础上,将A表的外键字段设置成unique即可 三种关系 多对一 或者说是一对多 举例:书和出版社 一个出版社可以出版多本书,请看图: ![在这里插入图片描述](http://106.13.73.98/media/ai/2019-03/463fea85

【MySQL】外键的变种 -- 2019-08-08 20:39:54

早过忘川 提交于 2019-11-26 14:16:54
原文: http://106.13.73.98/__/24/ 目录 三种关系 多对一 多对多 一对一 因为有foreign key的约束,使得两张表形成了三种关系: 多对一 多对多 一对多 重点理解如何找出两张表之间的关系 现在有A、B两张表 分析步骤: 1. 先站在A表的角度去找 :是否A表的多条记录可以对应B表的一条记录,如果是,则证明A表的一个字段 foreign key B表的一个字段(通常是id). 2. 再站在B表的角度去找 :是否B表的多条记录可以对应A表的一条记录,如果是,则证明B表的一个字段 foreign key A表的一个字段(通常是id). 3. 总结: 多对一 如果是步骤1成立,则是A表多对一B表 如果是步骤2成立,则是B表多对一A表 多对多 如果步骤1和步骤2同时成立,则证明这两张表是一个双向的多对一,即多对多,需要定义一个这两张表的关系表来专门存放二者的关系. 一对一 如果1和2都不成立,而是A表的一条记录唯一对应B表的一条记录,反之亦然。这种情况很简单,就是在A表 foreign key B表的基础上,将A表的外键字段设置成unique即可 三种关系 多对一 或者说是一对多 举例:书和出版社 一个出版社可以出版多本书,请看图: ![在这里插入图片描述](http://106.13.73.98/media/ai/2019-03/463fea85

MySQL学习笔记--DQL、DML、DDL、TCL语句,约束(主键、外键)

我只是一个虾纸丫 提交于 2019-11-26 04:07:20
MySQL 使用工具 Windows自带的命令行窗口 MySQL Front 一、MySQL常用数据类型 1. char 占用字节数 char(n) 定长字符串,存储控件大小固定 如:char(2) 2. varchar 占用字节数 varchar(n) 变长字符串,存储空间等于实际数据空间 只包含英文字符的字符串 3. int 占用字节数 4个字节 整型 比如自增ID和表示数量 4. bigint 占用字节数 8个字节 长整型 数量比较大的自增ID float(数值型)、double(数值型)、date(日期时间,8个字节)、BLOB(二进制大对象)、CLOB(字符大对象)… 二、SQL语句分类 1. DQL语句—数据查询语言(select) 1.1 简单查询 查询单个字段 select 字段名 from 表名; 注:所有符号为英文下符合 查询多个字段 select 字段名,字段名 from 表名; 查询所有字段 select * from 表名; 1.2 练习(计算每位员工的年薪) select ename,sal*12 from emp; //进一步修改一下查询年薪后的字段名 select ename,sal*12 as yearsal from emp; 1.3 条件查询 注意:条件查询需要用到where语句,where必须放到from语句表的和面; 等号(=)操作符 /

【MySQL】外键的变种 -- 2019-08-07 09:54:58

大憨熊 提交于 2019-11-25 19:22:57
原创: http://106.13.73.98/__/26/ 目录 三种关系 多对一 多对多 一对一 因为有foreign key的约束,使得两张表形成了三种关系: 多对一 多对多 一对多 重点理解如何找出两张表之间的关系 现在有A、B两张表 分析步骤: 1. 先站在A表的角度去找 :是否A表的多条记录可以对应B表的一条记录,如果是,则证明A表的一个字段 foreign key B表的一个字段(通常是id). 2. 再站在B表的角度去找 :是否B表的多条记录可以对应A表的一条记录,如果是,则证明B表的一个字段 foreign key A表的一个字段(通常是id). 3. 总结: 多对一 如果是步骤1成立,则是A表多对一B表 如果是步骤2成立,则是B表多对一A表 多对多 如果步骤1和步骤2同时成立,则证明这两张表是一个双向的多对一,即多对多,需要定义一个这两张表的关系表来专门存放二者的关系. 一对一 如果1和2都不成立,而是A表的一条记录唯一对应B表的一条记录,反之亦然。这种情况很简单,就是在A表 foreign key B表的基础上,将A表的外键字段设置成unique即可 三种关系 多对一 或者说是一对多 举例:书和出版社 一个出版社可以出版多本书,请看图: ![在这里插入图片描述](http://106.13.73.98/media/ai/2019-03/463fea85