mysql - 表关系

两张表之间的关系

  • 多对一
    在多表类型中建立一个外键字段即可实现两表关联(ps:添加一个一表主键id引用字段,做逻辑关联即可,解除强耦合性[级联删除/更新带来的影响])
  • 多对多
    两表符合双向的多对一关系即为多对多关系,此时再创建一张表添加两个多对多表的主键id引用字段即可实现两表的关联。新表表名命名为两表名中间用2相链接,tablea2tableb。
  • 一对一
    在一从表中添加一个外键字段且唯一,从而保证外键字段的来源准确和唯一。
    #用户表
    create table user(
    	id int primary key auto_increment,
    	name char(16) not null,
    );
    #身份证表
    create table idcard(
    	id int primary key auto_increment,
    	number int not null,
    	u_id int not null unique,#外键字段且必须保证唯一(解决多对一的冲突关系)
    	foreign key(u_id) references user(id)
    	on delete cascade 
    	on update cascade
    );
    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章