MYSQL的多表操作

1.外键:用来描述两张表之间的关系(某商品属于哪个分类,需要在该商品上添加category_id),从表的外键指向主表的主键

2.外键声明:alter table product add foreign key(category_id) references category(cid);

                   指定category_id为外键并且给外键起一个外键名:

                      alter  table  product add [constraint category_id_fk] foreign key(category_id) references category(cid);

                 在创建表的时候声明外键:

                       pname varchar(20), [constraint category_id_fk] foreign key(category_id) references category(cid);

3.解除外键关系:alter table product dorp foreign key(category_id_fk) ; 这里的外键名称不是声明外键的列名,而是constraint后面的外键名

4.多表的注意事项:

                  1.从表中不能添加主表不存在的记录。比如主表的主键没有004,从表中就不能添加外键为004的记录

                  2.主表中不能删除从表中有引用的数据。比如删除主表中的004,而在从表中的外键有004,则不能删除。要想删除必须解除外键关系。或者先删除从表的数据,再删除主表的数据

5.使用外键的目的:保证数据的完整性。为什么?因为有些数据不能在一张表中完全显示出来,需要多张表

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值