第三话 - MySQL约束 - 修改表时用法
🍭 第三话 - MySQL约束 - 修改表时用法
🤔 之前我们了解完约束的概念,约束是为了限制表中的数据,为了保证表中的数据的准确性和可靠性。并且在昨天我们也开始学习如何去使用约束,学会了如何在创建表对表中的字段添加一些限制,通过列级约束和表级约束的不同分类学习了创建表时使用约束,那如果数据库表已经创建了,那我们这时候又想对数据库表的字段进行限制,这时候如何去使用呢?接下来就一起看看吧!
修改表时用法
今天我们就来看看如何在已经存在表时,又去添加约束,如何删除表中已经存在的约束。
语法
我们先来看看修改表时,再来添加约束应该使用什么语法呢,并且关键字是什么? ALTER是需要在修改表时主要的关键字,并且在添加不同类型得到约束使用的关键字也不同,列级约束是使用MODIFY,表级约束是使用ADD,接下来就一起看看具体的语法吧。
-- 修改表时用法
-- 添加列级约束
ALTER TABLE 表名 MODIFY COLUMN 字段名 字段类型 新约束;
-- 添加表级约束
ALTER TABLE 表名 ADD 【constraint 约束名】 约束类型(字段名) 【外键的引用】;
添加约束用法
先创建一下表,不添加约束条件,后续再根据需求来添加约束。
DROP TABLE IF EXISTS stuinfo;
CREATE TABLE stuinfo(
id INT,
stuname VARCHAR(20),
gender CHAR(1),
seat INT,
age INT,
majorid INT
);
接下来看看添加不同的约束的步骤。
#1.添加非空约束
ALTER TABLE stuinfo MODIFY COLUMN stuname VARCHAR(20) NOT NULL;
#2.添加默认约束
ALTER TABLE stuinfo MODIFY COLUMN age INT DEFAULT 18;
#3.添加主键
#①列级约束
ALTER TABLE stuinfo MODIFY COLUMN id INT PRIMARY KEY;
#②表级约束
ALTER TABLE stuinfo ADD PRIMARY KEY(id);
#4.添加唯一
#①列级约束
ALTER TABLE stuinfo MODIFY COLUMN seat INT UNIQUE;
#②表级约束
ALTER TABLE stuinfo ADD UNIQUE(seat);
#5.添加外键
ALTER TABLE stuinfo ADD CONSTRAINT fk_stuinfo_major FOREIGN KEY(majorid) REFERENCES major(id);
删除约束
那如果我们添加一些不需要的约束时,该如何取消呢,该如何删除呢,删除的主要关键字还是ALERT,但是还有两个关键字分别为MODIFY和DROP两个关子健。接下来看看如何使用吧。
-- 修改表时删除约束
-- 删除非空约束
ALTER TABLE stuinfo MODIFY COLUMN stuname VARCHAR(20) NULL;
-- 删除默认约束
ALTER TABLE stuinfo MODIFY COLUMN age INT ;
-- 删除主键
ALTER TABLE stuinfo DROP PRIMARY KEY;
-- 删除唯一
ALTER TABLE stuinfo DROP INDEX seat;
-- 删除外键
ALTER TABLE stuinfo DROP FOREIGN KEY fk_stuinfo_major;
🌸 完结
相信各位看官看到这里大致都对今天的这约束的修改表时的用法有些了解吧,明天我们继续看看约束的一些知识点吧,当然后面还有更多精彩内容等着大家呢。最后千言万语,直接来个今天的思维导图吧,希望能够帮助到你呢!😊
🧐 本人不才,如有什么缺漏、错误的地方,也欢迎各位人才们评论批评指正!🤞🤞🤞
🤩 当然如果这篇文章确定对你有点小小帮助的话,也请亲切可爱的人才们给个点赞、收藏下吧,非常感谢!🤗🤗🤗
🥂 虽然这篇文章完结了,但是我还在,永不完结。我会努力保持写文章。来日方长,何惧车遥马慢!✨✨✨
💟 感谢各位看到这里!愿你韶华不负,青春无悔!让我们一起加油吧! 🌼🌼🌼
💖 学到这里,今天的世界打烊了,晚安!🌙🌙🌙
转载自:https://juejin.cn/post/7105645737676898318