Mysql数据库外键的使用【重点】

Mysql数据库外键的使用【重点】Mysql 数据库外键用法


? 作者简介:大学机械本科,野生程序猿,学过C语言,玩过前端,还鼓捣过嵌入式,设计也会一点点,不过如今痴迷于网络爬虫,因此现深耕Python、数据库、seienium、JS逆向、安卓逆向等等,,目前为全职爬虫工程师,学习的过程喜欢记录,目前已经写下15W字电子笔记,因此你看到了下面这篇文章~

? 技术栈:Python、HTML、CSS、JavaScript、C、Xpath语法、正则、、MySQL、Redis、MongoDB、Scrapy、Pyspider、Fiddler、Mitmproxy、分布式爬虫、JAVA等

?个人博客:https://pythonlamb.github.io/

?大学作品合集:https://sourl.cn/h9M2jX

?欢迎点赞⭐️收藏?关注?留言呀?








外键使用

外键的使用场景

答:两个数据表相关联,一个数据表是产品名称,另一个数据表是这些产品的分类,向产品名称这个数据表添加数据时,但是产品分类这个数据表内没有这个产品的相应分类,我们就不能向名称数据表进行插入数据,这时就要用到外键!

什么是外键

答:两个数据表相关联时,一个数据表的主键出现在另外一个数据表中,称另外这个数据表内的这个字段为外键

图示:

image-20211012151343486

怎么向已经存在的字段添加外键约束

关键字:foreign key 、references

语法:alter table product add foreign key (nid) references classification(id);

表示向 product 表的 nid 字段添加外键,这个外键引用于 classification数据表的主键(id字段)

快速代码体验:

Mysql数据库外键的使用【重点】

怎么在创建数据表时添加外键

语法:

create table product_test( id int not null primary key, name varchar(10)not null, mid int not null, foreign key (mid) references classification(id)); 

上面语法表示创建 product_test 数据表并且为mid字段加上外键,foreign key (mid) references classification(id)语法表示将mid字段设置为外键,外键引用于 classification数据表的 id 字段

注意事项:创建数据表添加外键,引用于哪个数据表的字段,那么这个数据表必须事先存在,例如上述的classification数据表之前就已经创建好!

快速代码体验:

image-20211012151414268

怎么查询数据表中的外键字段名称

show create table 要查找外键的数据表名

例如:show create table product_test;

代码演示

image-20211012151423481

注意事项:上面查询的字段名称不是 mid 而是刚开始的那段字符串,即 product_test_ibfk_1 才是字段名称

怎么删除数据表中的字段外键

alter table 数据表名 drop foreign key 外键字段名

快速代码体验

image-20211012151433707

持续更新中…

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233691.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • utc时间戳转换器_java时间转字符串

    utc时间戳转换器_java时间转字符串StringutcStr=”ThuAug1416:45:37UTC2011″;Datedate=newDate(utcStr);SimpleDateFormatsf=newSimpleDateFormat(“yyyy-MM-dd”);sf.format(date);

    2022年10月3日
    2
  • qmk固件是什么_qt5svg.dll

    qmk固件是什么_qt5svg.dll操作步骤:1.安装qtp10.02.拷贝mgn-mqt82.exe到C:\ProgramFiles\MercuryInteractive(创建)文件夹下3.创建C:\ProgramFiles\CommonFiles\MercuryInteractive\LicenseManager文件夹4.执行mgn-mqt82.exe5.复制lservrc,整个电脑搜索,搜索出来之后使用t…

    2022年10月5日
    3
  • dedecms织梦首页如何调用文章列表?

    dedecms织梦首页如何调用文章列表?

    2021年9月21日
    48
  • Idea激活码最新教程2024.2.5版本,永久有效激活码,亲测可用,记得收藏

    Idea激活码最新教程2024.2.5版本,永久有效激活码,亲测可用,记得收藏Idea 激活码教程永久有效 2024 2 5 激活码教程 Windows 版永久激活 持续更新 Idea 激活码 2024 2 5 成功激活

    2025年5月31日
    4
  • centos7安装python 3.7_python安装后如何使用

    centos7安装python 3.7_python安装后如何使用文章目录什么是EPEL更新一下yum:安装EPEL:安装python3使用python3什么是EPELRHEL以及他的衍生发行版如CentOS、ScientificLinux为了稳定,官方的rpmrepository提供的rpm包往往是很滞后的,当然了,这样做这是无可厚非的,毕竟这是服务器版本,安全稳定是重点,官方的rpmrepository提供的rpm包也不够丰富,很多时候需要自己编译那太辛苦了,而EPEL恰恰可以解决这两方面的问题。什么是EPEL?EPEL的全称叫ExtraPackag

    2022年9月25日
    3
  • cockpit二次开发_laravel api

    cockpit二次开发_laravel api背景:最近公司要基于cockpit,来定制自己的一个服务器管理web应用。嗯。。cockpit是啥?能干嘛?我要拿它干嘛?如你所见,我此刻是懵逼的。cockpit了解我熟练的打开了百度又打开了bing哦吼,二度懵逼。经过几番了解,大概是知道了LinuxCockpit是一个基于Web界面的应用,它提供了对系统的图形化管理。因为功能集成,对服务器管理来说,可以称得上是神器,深受linux开发者的喜爱。(呵呵。。)最后我大概是知道了,公司就是想让我在人..

    2025年7月27日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号