创建约束

alter table user_relation add CONSTRAINT `fk_deleteUser` FOREIGN KEY (`account`) REFERENCES `sys_user` (`account_`) ON DELETE CASCADE ON UPDATE NO ACTION;表名              外键名            表字段         外键关联表  外键关联字段   删除时  级联模式     更新时  不做任何操作

模式:

  • district:严格模式(默认),父表不能删除或更新一个已经被子表数据引用的记录;
  • cascade:级联模式,父表的操作,对应子表关联的数据也跟着被删除;
  • set null:置空模式,父表的操作之后,子表对应的数据(外键字段)被置空。
CONSTRAINT fk_score_stu_sid FOREIGN KEY(stu_id) REFERENCES student(stu_id)
fk_score_stu_sid:外键名
stu_id 本表某一列名
student(stu_id) 关联外表(主键)FOREIGN KEY(stu_id) REFERENCES student(stu_id);此时系统自动取外键名:crouse_ibfk_1

在已有的表中设置外键约束:

alter table crouse add CONSTRAINT fk_crouse_tid FOREIGN KEY(teacher_id) REFERENCES teacher(teacher_id);
注意:子表的外键必须关联父表的主键,且关联字段的数据类型必须匹配,如果类型不一样,则创建子表时会出现错误。

删除外键约束:

有外键约束的列必须先删除外键,然后才能删除该列:
alter table subject drop foreign key crouse_ibfk_1;
crouse_ibfk_1是外键的名字,我们可以自己设,也可以系统生成,这样的话我们要查看建表信息才能知道外键名字是什么。

查看外键

https://blog.csdn.net/qq_21480607/article/details/113481976

表信息:

CREATE TABLE teacher(teacher_id int(12) primary key,teacher_name varchar(10)
)ENGINE= InnoDB DEFAULT CHARSET=UTF8;
CREATE TABLE crouse(crouse_id int(8) primary key,crouse_name varchar(20),teacher_id int(12),CONSTRAINT fk_crouse_tid FOREIGN KEY(teacher_id) REFERENCES teacher(teacher_id)
)ENGINE= InnoDB DEFAULT CHARSET=UTF8;

数据库SQL外键设置相关推荐

  1. sql组合键设置外键_学习SQL:外键

    sql组合键设置外键 In the previous article, we talked about the primary key (PK). In this one, we'll check w ...

  2. mysql外键设置sql语句_sql设置外键(设置外键的sql语句)

    sql设置外键(设置外键的sql语句) 2020-07-24 11:44:03 共8个回答 sql怎么设置外键 创建数据库时就是有主键的创建了主键,但是表之间的关系没有联系,要建数据库关系图只有主键没 ...

  3. mysql外键设置不成功_MySQL数据库建立外键失败的原因总结

    在MySQL数据库创建外键时,经常会发生一些错误,这是一件很令人头疼的事.一个典型的错误就是:Can't create table... 的错误.在很多实例中,这种错误的发生都是因为mysql一直以来 ...

  4. mysql 命令行 外键_MySQL命令行MySql外键设置详解

    第一招.mysql服务的启动和停止 net stop mysql net start mysql 第二招.登陆mysql 语法如下: mysql -u用户名 -p用户密码 键入命令mysql -uro ...

  5. sql外键_SQL外键

    sql外键 In this article let us review different ways to create a SQL foreign key, rules on updates and ...

  6. sql外键需要输入吗_SQL外键

    在本教程中,将学习SQL外键以及如何创建FOREIGN KEY约束以强制表之间的关系. 1. SQL外键约束简介 外键是一列或一组列,用于强制两个表中的数据之间的链接. 在外键引用中,第一个表的主键列 ...

  7. flask sql外键使用_如何在SQL中使用外键?

    flask sql外键使用 Basically, Foreign Key represents relationship between tables. 基本上, 外键代表表之间的关系 . Synta ...

  8. Navicat外键设置

    先介绍一下基本情况: 现在有两个表一张是t_blog表(博客表),一张是t_blogType表(博客类别) 现在我想把t_blog表中的typeID属性设置为外键,关联t_blogType表中的id属 ...

  9. mysql 命令行 外键_MySQL基本命令行MySql外键设置详解

    MySQL 命令行 一.mysql服务的启动和停止 net stop mysql net start mysql 二.登录mysql 语法如下:mysql  -u  用户名  -p  用户密码 键入命 ...

最新文章

  1. 比较两个字符串是否相等
  2. 洛谷 1351 联合权值
  3. 全球化、文化和团队多样性
  4. boost::hana::when_valid用法的测试程序
  5. 数据源管理 | 基于JDBC模式,适配和管理动态数据源
  6. spring-boot两小时入门笔记
  7. 有偿数据收集 | 哈工大手写作文图片收集
  8. 【Spring源码】Spring Transactional事务:传播机制(Propagation) 介绍 和 源码剖析
  9. MySQL 常用基础命令
  10. 知识图谱中的结构信息建模
  11. 【2022年】帝豪gs/帝豪gl 车机安装第三方软件教程
  12. windows怎样让宽带自动连接
  13. android 蓝牙发送失败怎么办,在Android中通过蓝牙发送文件时出错?
  14. 从两幅图像的匹配点计算焦距f
  15. Animator组件--culling mode
  16. N子棋的实现方法,包括三子棋,五子棋
  17. 一个站点不够学?那就在用Python增加一个采集目标,一派话题广场+某金融论坛话题广场爬虫
  18. 福岛第1核电站2号3号反应堆辐射量急剧上升
  19. matlab绘制蔓叶线,powerdraw
  20. php tp5 cms,thinkphpcms

热门文章

  1. [Go实战]mac 完全删除 go
  2. 游戏夜读 | 不受欢迎的那个人
  3. td内有图片和文字,如何都垂直居中
  4. android自动化测试抖音,手机自动化测试IDE-----Airtest实战篇
  5. Git 回滚代码到指定版本
  6. mysql字符集的排序规则_MySql字符集与排序规则详解
  7. 如何在 GitHub 的项目中创建一个分支呢?
  8. SQL远程连接数据库查询数据,远程调用存储过程
  9. soapUI生成WebService客户端代码
  10. 用多线程实现卖火车票