MySQL的多表关系梳理及建表的语句

一、一对一的关系:

    一对一的关系用的较少(一对一关系可以直接建在一张表内)。

1.举例:

    人和身份证:一个人只能有一张有效身份证,一张有效身份证只能对应一个人。

2.建表原则:

    2.1两张表,唯一外键对应主表主键(用unique约束外键)

    2.2两张表,两张表的主键各自对应

二、一对多的关系:

1.举例:

    部门和员工:一个部门可以有多个员工,一个员工只能属于一个部门。

2.建表原则:

    在多的一方建立一个字段(定义为该表的外键),字段作为外键指向一的一方的主键。

    *把一的一方称为主表;多的一方称为从表。

3.建表的语句

    alter table 从表 add [constraint] [外键名称] foreign key(从表外键字段名) references 主表(主表主键);

    **[constraint] [外键名称]用于删除外键的约束,建议“-fk”格式结尾。(写语句时可以省略)

    删除外键约束语句:

        alter table 从表 drop foreign key 外键名称;

三、多对多关系:

1.举例:

    学生选课:一个学生可以选多门课程;一个课程也可以被多个学生选。

2.建

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值