持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第11天,点击查看活动详情
大家好! 我是慕歌,一只想教你学习 后端技术的野生coder! 欢迎来到慕歌的数据库系列教程,希望通过这个教程带大家深入学习数据库技术,该教程所有知识点均来源于本人的日常学习与开发中,如有疑问请与我联系!
前言
在上一节的分享中,慕歌向大家分享关于数据库约束的知识提到了数据库约束的重要性,以及约束的分类。约束是基于现实意义而诞生的,很多情况下与数据相辅相成,数据在诞生的时候,就已经具备了某种约束。或是完整性约束,或是数据域约束,或是引用关系约束,这些约束都是在规范数据的范式执行。根据约束的不同功能,我们在开发中引入必要的约束。
这一节中,将向大家详细介绍部分约束的使用,以及规则,更加清晰的了解每个约束的价值,在表中的作用以及其不可忽视的功能。
数据约束
非空约束
**作用:**限定该列的数据不能为空值,进行字段约束
#关键字:NOT NULL
#语法
CREATE TABLE tab_name(
col_name1 type NOT NULL,
col_name2 type NOT NULL
);
#示例:
#建立学生表,要求学生姓名,学号不为空
CREATE TABLE student(
sid int,
sname varchar(20) not null,
tel char(11) ,
cardid char(18) not null
);
#追加约束
ALTER TABLE tab_name modify col_name type NOT NULL;
#清除约束
ALTER TABLE tab_name modify col_name type;
**特点: **
唯一约束
**作用:**限定某一列或者某一字段数据不能重复
#关键字:UNIQUE
#语法
CREATE TABLE tab_name(
col_name1 type UNIQUE,
col_name2 type UNIQUE KEY
);
#示例:
#建立学生表,要求学生手机号,学号不重复
CREATE TABLE student(
sid int,
sname varchar(20) not null,
tel char(11) unique,
cardid char(18) unique key
);
#追加单列约束
ALTER TABLE tab_name modify col_name type UNIQUE;
#追加单列约束
ALTER TABLE tab_name ADD unique key(col_name);
#组合唯一约束
ALTER TABLE tab_name ADD unique key(col_name1,col_name2);
#删除唯一约束
ALTER TABLE USER
DROP INDEX index_name;
特点:
主键约束
**作用: **主键约束用于对主键字段的特殊约束,只作用于主键字段
#关键字:PRIMARY KEY
#语法
CREATE TABLE tab_name(
col_name1 type PRIMARY KEY
);
#示例:
#以学号作为主键,要求学生姓名不为空,电话号码唯一
CREATE TABLE student(
sid int,
sname varchar(20) not null,
tel char(11) unique,
cardid char(18) primary key
);
#追加主键约束
ALTER TABLE tab_name ADD PRIMARY KEY(col_name);
#删除主键约束
ALter TABLE tab_name drop primary key;
注意:
结语
这一章的分享到这里就结束了,下一节将带来数据库约束的剩余内容的分享学习!
如果您觉得本文不错,欢迎点赞支持,您的关注是我坚持的动力!