(MYSQL学习笔记1)给数据库设置外键

您所在的位置:网站首页 mysql设置外键 (MYSQL学习笔记1)给数据库设置外键

(MYSQL学习笔记1)给数据库设置外键

2022-06-07 21:47| 来源: 网络整理| 查看: 265

设置外键有两种方式,一种是在创建表的时候关联外键,另一种是给已经存在的表添加外键。具体操作如下:

1、在创建表时的操作

班级表(主表):

create table tb1(     id INT PRIMARY KEY AUTO_INCREMENT,     classname VARCHAR(20) NOT NULL );

用户表(子表):

create table tb2(     id INT PRIMARY KEY AUTO_INCREMENT,     username VARCHAR(20) NOT NULL,     classid INT,     FOREIGN KEY (classid) REFERENCES tb1(id) ON DELETE CASCADE ON UPDATE CASCADE );

----------------------------------------------------------------------------

2、在已有表的基础上添加外键

ALTER TABLE tb3 ADD CONSTRAINT T_C FOREIGN KEY (classid) REFERENCES tb1(id);

----------------------------------------------------------------------------

在之后可以用命令来查看创建表的操作,SHOW CREATE TABLE tb2;可以发现其中有这么一句话

 

PRIMARY KEY (`id`),   KEY `classid` (`classid`),   CONSTRAINT `tb2_ibfk_1` FOREIGN KEY (`classid`) REFERENCES `tb1` (`id`) ON DELETE CASCADE

说明外键已经成功创建了。

-----------------------------------------------------------------------------

另附说明:

CASCADE:从父表删除或更新且自动删除或更新子表中匹配的行。

SET NULL:从父表删除或更新行,并设置子表中的外键列为NULL。前提是保证该外键列不为NOT NULL。

RESTRICT:拒绝对父表的删除或更新操作。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3