ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

navicat 数据表添加外键

2021-03-21 18:29:26  阅读:239  来源: 互联网

标签:myorder userId 外键 navicat 数据表 添加 user 表中


数据库简介

在这里插入图片描述
 
 
 
 

数据表简介

user表(用户表)

存放用户相关信息,字段说明如下:
唯一标识userId(主键)
用户名username
密码password
在这里插入图片描述

 
 

myorder表

存放用户订单信息,字段说明如下:
订单唯一标识orderId(主键)
总价price
userId是myorder表中的外键,关联的是user表中的主键userId
 
 
注意:
1.myorder表中必须先新建userId字段,否则外键添加失败。
2.myorder表中的userId字段的类型和长度必须与user表中userId字段的一致,否则外键添加失败。
在这里插入图片描述
 
 

数据表选项

数据表的引擎为InnoDB,否则可能外键添加失败。查看方法如下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
 
 
 
 

navicat中,数据表外键添加步骤

在myorder表中进行如下操作:
①单击“外键”tab
②单击“添加外键”按钮
③在绿框处根据需要进行设置

在这里插入图片描述
 
 
关于绿框部分的设置说明,简要说明如下
简要说明:

  • 名,即外键名(随便取)
  • 字段,如myorder表的字段userId
  • 参考模式,就是当前数据表所在的数据库
  • 参考表,比如user表
  • 参考字段,比如user表的字段useId
  • 删除时,指删除时做的操作。这里选择CASCADE,表示当user表中某记录被删除,则myorder表的相应记录也被删除
  • 更新时,指更新时做的操作。这里选择CASCADE,表示当user表中某记录被更新,则myorder表的相应记录也被更新
     
     
    具体参见这两篇文章
    navicat给mysql添加外键
    演示在navicat中为mysql表添加外键
     
     
     
     

测试

依次向user表和myorder表插入数据(必须先向user表插入数据,然后再在myorder表中插入数据,如果顺序反了会报错)
在这里插入图片描述
在这里插入图片描述

 
 
新建查询,执行以下语句

delete from user where userId=1;

注意是删除user表的,不是删除myorder表,这样当user表中userId=1的记录被删除时,myorder表中userId=1的记录也会被级联删除。(如果反过来,则user表中userId=1的记录不会被删除)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

发现删除成功。至此,外键添加成功。
 
 
 
 

参考

navicat给mysql添加外键

演示在navicat中为mysql表添加外键

标签:myorder,userId,外键,navicat,数据表,添加,user,表中
来源: https://blog.csdn.net/qq_42772612/article/details/115053104

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有