Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $YECBGYFECGEAFWHA as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2

Deprecated: imwpcache\f884414bce24ee67f\f73723ec7b1919fa5::__construct(): Implicitly marking parameter $BBWFDDBHHYHDXXAB as nullable is deprecated, the explicit nullable type must be used instead in /www/wwwroot/www.chuangxiangniao.com/wp-content/plugins/imwpcache-dist/build/f884414bce24ee67ff73723ec7b1919fa5.php on line 2
mysql增加外键有哪些方法_创想鸟

mysql增加外键有哪些方法

mysql添加外键的方法有:在属性值后面直接添加;在sql语句末端添加;使用fk以及在建表后添加外键

mysql增加外键有哪些方法

相关学习推荐:mysql教程

mysql添加外键的4种方式

创建主表: 班级

CREATE TABLE class(cid INT PRIMARY KEY AUTO_INCREMENT,sname VARCHAR(15) NOT NULL)INSERT INTO class VALUES(NULL,'六年级一班')INSERT INTO class VALUES(NULL,'六年级二班')

第一种:在属性值后面直接添加

CREATE TABLE student(sid INT AUTO_INCREMENT,sname VARCHAR(10) NOT NULL,s_cid INT REFERENCES class(cid),PRIMARY KEY(sid));

//添加数据进行测试

INSERT INTO student VALUES(NULL,'王大锤',2)INSERT INTO student VALUES(NULL,'胡汉三',3)    //约束不生效,原因待查INSERT INTO student VALUES(NULL,'卧槽',4)     //不敢相信,在测试一次

这种方式,测试不知道为什么,居然添加进去了  WTF?  在网上百度无果,自学群无回复  暂时先搁置在这儿

第二种:2.在sql语句末端添加

法语写作助手 法语写作助手

法语助手旗下的AI智能写作平台,支持语法、拼写自动纠错,一键改写、润色你的法语作文。

法语写作助手 31 查看详情 法语写作助手

CREATE TABLE student(sid INT AUTO_INCREMENT,sname VARCHAR(10),s_cid INT,PRIMARY KEY(sid),FOREIGN KEY (s_cid) REFERENCES class(cid));

//插入数据测试一下

INSERT INTO student VALUES(NULL,'王大锤',2)INSERT INTO student VALUES(NULL,'胡汉三',3)   //约束生效  插入失败

外键约束生效

第三种:fk的使用

CREATE TABLE student(sid INT AUTO_INCREMENT,sname VARCHAR(10) NOT NULL,s_cid INT ,PRIMARY KEY(sid),CONSTRAINT fk_student_class FOREIGN KEY(s_cid) REFERENCES class(cid));
INSERT INTO student VALUES(NULL,'王大锤',2)INSERT INTO student VALUES(NULL,'胡汉三',3)  //约束生效  插入失败

第四种:在建表后添加外键

CREATE TABLE student(sid INT AUTO_INCREMENT,sname VARCHAR(10) NOT NULL,s_cid INT ,PRIMARY KEY(sid));

//添加外键约束:

ALTER TABLE student ADD FOREIGN KEY (s_cid) REFERENCES class(cid);

//测试

INSERT INTO student VALUES(NULL,'王大锤',2)INSERT INTO student VALUES(NULL,'胡汉三',3)  //约束生效   插入失败

以上就是mysql增加外键有哪些方法的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/369883.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
华为超融合王者归来:Q1超融合存储系统中国市场份额第一,助力企业数字化转型!
上一篇 2025年11月6日 07:13:40
微软 Loop 正式向所有用户开放:带来大量新功能和改进
下一篇 2025年11月6日 07:13:44

相关推荐

  • MySQL和Oracle:对于并行查询和并行计算的支持对比

    mysql和oracle:对于并行查询和并行计算的支持对比 摘要:本文将重点讨论两个最常用的关系型数据库系统——MySQL和Oracle在并行查询和并行计算方面的支持程度。通过对比它们的特点、架构以及代码示例,旨在帮助读者更好地了解并行查询和并行计算的概念以及两个数据库系统在该领域的不同表现。 关键…

    2026年10月6日
    100
  • MySQL与MongoDB:选择最佳数据库类型的基准测试

    标题:mysql与mongodb:选择最佳数据库类型的基准测试 引言:在现代软件开发中,选择适合自己项目需求的数据库类型是至关重要的。MySQL和MongoDB是两种最为常见的数据库类型,本文将通过进行一系列基准测试来比较它们的性能和适用场景。 简介MySQL是一种关系型数据库管理系统,广泛应用于各…

    2026年10月6日
    000
  • Spring Boot数据库初始化平台属性变更指南

    本文旨在解决Spring Boot应用中平台特定SQL脚本(如schema-mysql.sql)无法执行的问题。核心原因是Spring Boot 2.5版本起,用于指定数据库初始化平台属性已从spring.datasource.platform变更为spring.sql.init.platform。…

    2026年10月6日
    100
  • 如何使用MySQL的ORDER BY函数对结果进行排序

    如何使用mysql的order by函数对结果进行排序 导语:在处理数据库中的数据时,经常会遇到需要对结果进行排序的情况。MySQL提供了ORDER BY函数,可以轻松实现对查询结果按照指定的规则进行排序。本文将介绍如何使用MySQL的ORDER BY函数,并给出代码示例。 一、ORDER BY函数…

    2026年10月6日
    000
  • 实践MySQL双写缓冲的开发优化方法及经验分享

    实践mysql双写缓冲的开发优化方法及经验分享 MySQL是目前最常用的开源关系型数据库管理系统之一,它在Web应用程序中扮演着非常重要的角色。在高并发的情况下,MySQL的性能往往成为瓶颈,因此开发者需要通过各种优化方法来提升MySQL的性能。 本文将介绍一种名为MySQL双写缓冲的优化方法,并分…

    2026年10月6日
    200
  • Java网络爬虫开发 Java如何实现高效网页数据抓取

    Java网络爬虫开发 Java如何实现高效网页数据抓取Java网络爬虫开发 Java如何实现高效网页数据抓取Java网络爬虫开发 Java如何实现高效网页数据抓取Java网络爬虫开发 Java如何实现高效网页数据抓取

    java网络爬虫开发的核心在于选择合适的库并高效抓取数据。1. 选择合适的库:jsoup适合静态html解析,httpclient处理http请求,htmlunit和selenium用于动态网页内容抓取;2. 构建http请求:使用httpclient发送get或post请求获取网页内容;3. 解析…

    2026年10月6日 • 用户投稿
    200
  • 在大数据场景下的MySQL储存引擎选择:MyISAM、InnoDB、Aria对比分析

    在大数据场景下的mysql储存引擎选择:myisam、innodb、aria对比分析 随着大数据时代的到来,传统的储存引擎在面对高并发、大数据量的情况下往往无法满足业务需求。MySQL作为最流行的关系型数据库管理系统之一,其储存引擎的选择显得尤为重要。在本文中,我们将对大数据场景下MySQL常用的储…

    2026年10月6日
    000
  • 如何使用MySQL的LOWER函数将字符串转换为小写

    如何使用mysql的lower函数将字符串转换为小写 MySQL是一种常用的关系型数据库管理系统,它提供了许多内置函数来操作和处理数据。其中之一就是LOWER函数,它可以将字符串中的字符转换为小写形式。在本文中,我们将学习如何正确使用MySQL的LOWER函数将字符串转换为小写。 LOWER函数可以…

    2026年10月6日
    100
  • MySQL中如何使用TRUNCATE函数对小数进行截断

    mysql中如何使用truncate函数对小数进行截断 在数据库中,我们经常需要处理数值类型的数据。有时候,我们需要对小数进行截断,以满足我们的需求。MySQL提供了TRUNCATE函数,可以帮助我们实现这一功能。 TRUNCATE函数是一个数学函数,用于对小数进行截断,返回截断后的结果。它的语法如…

    2026年10月6日
    100
  • 如何在mysql中使用EXISTS和IN

    答案:IN用于值在子查询结果集中匹配,适合小数据集;EXISTS判断子查询是否有返回行,适合%ign%ignore_a_1%re_a_1%集和关联查询。 在MySQL中,EXISTS 和 IN 都用于子查询场景,判断某个条件是否成立。虽然它们有时可以实现相似的效果,但使用方式和性能特点不同。下面分别…

    2026年10月6日
    100
  • MySQL中如何使用FIELD函数按照指定的顺序对字段进行排序

    mysql中如何使用field函数按照指定的顺序对字段进行排序 在MySQL数据库中,我们经常会使用ORDER BY子句对查询结果进行排序。通常情况下,我们可以使用ASC(升序)或DESC(降序)来指定排序的顺序。然而,有时候我们需要按照自定义的顺序进行排序,这时就可以使用MySQL的FIELD函数…

    2026年10月6日
    100
  • MySQL中双写缓冲的实现原理与性能优化策略

    mysql中双写缓冲的实现原理与性能优化策略 引言:MySQL是一种常用的开源关系型数据库管理系统,广泛应用于各种类型的应用程序中。在数据库系统中,保证数据的一致性和持久化是非常重要的,而双写缓冲机制正是为了提高写入性能而产生的一种优化策略。本文将介绍双写缓冲的原理和实现方式,并提供一些性能优化的策…

    2026年10月6日
    100
  • MySQL InnoDB引擎细节优化技巧:从存储结构到索引算法的实战

    mysql innodb引擎细节优化技巧:从存储结构到索引算法的实战 引言:MySQL是目前使用最广泛的关系型数据库管理系统之一,而InnoDB是MySQL默认的存储引擎。InnoDB引擎是一种高性能、可靠性好的引擎,适用于大规模的数据存储和高并发的访问。 本文将从存储结构到索引算法,介绍一些Inn…

    2026年10月6日
    200
  • MySQL中如何使用LOCATE函数查找子字符串在字符串中的位置

    mysql中如何使用locate函数查找子字符串在字符串中的位置 在MySQL中,有许多函数可以用来处理字符串。其中,LOCATE函数是一种非常有用的函数,可以用来查找子字符串在字符串中的位置。 LOCATE函数的语法如下: LOCATE(substring, string, [position])…

    2026年10月6日
    100
  • MySQL中如何使用LEFT JOIN函数获取左表的所有记录

    mysql中如何使用left join函数获取左表的所有记录 在 MySQL 中,我们使用 LEFT JOIN 函数可以很方便地获取左表的所有记录。LEFT JOIN 是一种连接查询的方式,它返回左表中的所有记录,同时匹配右表中的对应记录。 LEFT JOIN 的语法如下: SELECT 列名FRO…

    2026年10月6日
    300
  • 在MySQL开发中正确配置和优化双写缓冲技术的方法

    在mysql开发中正确配置和优化双写缓冲技术的方法 在MySQL数据库中,双写缓冲(Doublewrite Buffer)是一种重要的技术,用于提高数据的安全性和可靠性。它可以在发生崩溃或系统故障的情况下,保护数据不丢失或破坏。本文将介绍正确配置和优化双写缓冲技术的方法,并提供相关的代码示例。 什么…

    2026年10月6日
    100
  • mysql如何实现数据同步?同步优化方法

    %ign%ignore_a_1%re_a_1%实现数据同步的核心方式是主从复制,通过二进制日志在多个实例间保持一致性,适用于读写分离、备份、负载均衡等场景。1. 基本配置包括开启主库二进制日志、创建复制账号并授权、配置从库server-id并启动i/o线程连接主库、检查同步状态是否正常;2. 提升性…

    2026年10月6日
    300
  • 利用MySQL的LPAD函数在字符串的左侧填充指定字符

    标题:mysql的lpad函数在字符串左侧填充指定字符的使用 引言:在MySQL中,LPAD函数可以方便地在字符串的左侧填充指定的字符。这种操作在很多实际场景中都非常有用,比如需要保证字符串的长度一致性或者美化输出结果等。本文将介绍LPAD函数的用法,并给出一些实际的代码示例。 一、LPAD函数的语…

    2026年10月6日
    100
  • 探秘MySQL MyISAM引擎的性能优化策略

    探秘mysql myisam引擎的性能优化策略 引言:在MySQL数据库中,MyISAM引擎是一种常用的数据库引擎之一。它以其简单、易于管理和高性能的特点,广泛应用于各种数据库应用中。然而,随着数据库数据量的不断增长和查询访问的复杂度提高,MyISAM引擎的性能优化就变得非常重要。本文将探讨 MyI…

    2026年10月6日
    100
  • 如何使用MySQL的IFNULL函数处理空值问题

    如何使用mysql的ifnull函数处理空值问题 在日常的数据库操作中,我们经常会遇到处理空值(NULL)的情况。MySQL提供了很多函数来处理空值,其中IFNULL函数是一个非常常用的函数。本文将介绍如何使用IFNULL函数来处理MySQL中的空值问题,并提供一些使用示例。 一、IFNULL函数的…

    2026年10月6日
    100

发表回复

登录后才能评论
关注微信