欢迎访问wabc.cc — 源码交易 · 软件定制 · 建站服务一站式平台
全部分类
首页 - 首页 - 解决方案 - 推荐文章 - Java内容-MySQL数据库之约束的重要性

Java内容-MySQL数据库之约束的重要性

分类:推荐文章 · 发布:2025-12-20 · 浏览:2

伙伴们

我们先把数据库搞完

好不好呀

Java内容-MySQL数据库之约束的重要性

你们不出声

我就当你们同意了呦!

Java内容-MySQL数据库之约束的重要性

今天分享的是

约束

约束是一种限制,它是通过对表的行或列的数据做出限制,来确保表和数据的完整性、唯一性和正确性。约束分为 5 种。

一.主键约束(primary key)

用于约束表中的一个或多个字段,作为这一行的标识符,在一张表中通过主键就能准确定位到一条记录。主键要求这一行的数据不能重复且不能为空。

Java内容-MySQL数据库之约束的重要性

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

另一种添加主键的方式

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

我们可以看到新创建的表 t_user2 没有主键

现在输入

alter table t_user2 add primary key(user_id);

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

双主键

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

Java内容-MySQL数据库之约束的重要性

我们看见有两个主键

插入数据

Java内容-MySQL数据库之约束的重要性

Java内容-MySQL数据库之约束的重要性

Java内容-MySQL数据库之约束的重要性

这条数据插入失败了!就是说明我们插入数据的主键不能重复!

二.默认值约束(default)

有 default 约束的列时,当插入数据为空时那么就插入该默认值。

我们先来修改表 t_user1 的默认值

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

现在的性别默认值就是‘男’了!

如果你已经建表成功了!

可以使用下面的语句来修改默认属性!

alter table t_user modify sex varchar(10) default '男' not null;

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

我们没有插入 sex 和 birthday 的数据

展示出来的就是设置的默认值!

三.非空约束(not null)

必须要插入值(可以是空格)

还是拿性别这个选项举例子!

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

我们插入 空格 或者 空 都可以插入成功查询结果!

Java内容-MySQL数据库之约束的重要性

当插入 null 是 提示该字段的值不能为 null

空、空格和 NULL 的区别:

String s1 = ""; 空值

创建出了对象(已经开辟了内存空间,对象已经实例化),这个对象内容为空,也就是空字符串。

s1.length = 0; s1.isEmpty() = true;

String s2 = " "; 空格

创建出了对象(已经开辟了内存空间,对象已经实例化),这个对象内容为不为空,而是空格。

s2.length = 1; s2.isEmpty() = false;

String s3 = null; 空对象

还没创建出对象(未分配内存空间),值不存在。在调用所有对象方法时候都会抛出异常,如s3.length(), s3.isEmpty()等方法。

四.唯一约束(unique)

表的某字段如果是 unique,那么,这个字段的每一段不能重复,但是可以为null。

建表时的语句如下图所示!

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

就不给大家演示了

当表已创建成功就用下面的语句

create unique index u_n on t_user(mobile);

Java内容-MySQL数据库之约束的重要性

Java内容-MySQL数据库之约束的重要性

看到了吗?这边改成 UNI 了!

现在可以插入数据了,因为我们之前的数据都是一样的,代码通不过,所以我就把数据全清了!现在我们来插入几条数据!

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

当我想插入重复的mobile(手机号码)时,提示我出错!

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

知识点呀各位!可以为 NULL 不能重复!

五.外键约束(foreign key)

如果一个表的某个字段指向另一个表的主键,就称为外建。

被指向的表,称之为主表,也叫父表

指向的表,称之为从表,也叫子表

先来创建一张班级的表

Java内容-MySQL数据库之约束的重要性

再来创建一张学生表

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

两张张表创建成功

现在填入数据

Java内容-MySQL数据库之约束的重要性

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

在插入一条数据

insert into t_student values(null, '1005', '燕小六', 21, 5);

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

因为如果主表没有相关的记录,从表不能插入数据,应该先插入主表数据然后再插入从表数据。

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

我们来看一下结果

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

伙伴们今天的分享就到这里了

另外给伙伴们补充一下

上一篇拉下的内容

查看建表语句

show create table t_user;

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

是不是很6,可以看到我们的建表语句

删除表

drop table tb_name;

Java内容-MySQL数据库之约束的重要性

Java学习交流群:495273252

伙伴们记得回去练习一下呦!

学编程一定不能懒!

再见了!


上一篇:最安全的理财产品,p2p理财是否真的安全?
下一篇:脸上长了“青春痘”,教你1个小诀窍,她激动的哭了“痘没了”

相关文章

源码分类

热门源码

最新资讯

联系我们