首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【MySQL】学习约束并通过图形化界面创建表

【MySQL】学习约束并通过图形化界面创建表

作者头像
ImAileen
发布2024-02-14 10:32:05
发布2024-02-14 10:32:05
8690
举报

约束

定义

约束是作用于表中字段上的规则,用于限制储存在表中的数据。

目的

保证数据库中的数据的正确,有效性,完整性。

约束

描述

关键字

非空约束

限制该字段的数据不能为null

NOT NULL

唯一约束

保证该字段所有数据都唯一,不重复

UNIQUE

主键约束

主键是一行数据的唯一标识 ,要求非空且唯一

PRIMARY KEY

默认约束

保存数据时,若未指定该字段的值,则采用默认值

DEFAULT

检查约束

保证字段满足某一个条件

CHECK

外键约束

用于建立两张表之间数据的连接,保证数据的完整性和一致性

FOREIGN KEY

⚠️注意:约束是作用于表中字段上的,可以在创建表/修改表的时候添加约束。


Exercises

根据需求,完成表结构的创建。

字段名

字段含义

字段类型

约束条件

约束关键字

id

ID唯一标识

int

主键,并且自动增长

PRIMARY KEY,AUTO_INCREMENT

name

姓名

varchar(10)

不为空,并且唯一

NOT NULL,UNIQUE

age

年龄

int

大于0,并且 小于等于120

check

status

状态

char(1)

如果没有指定该值,默认为1

DEFAULT

gender

性别

char(1)

约束演示1

代码语言:javascript
复制
-- -------------约束演示---------------
create table yuser(
    id int primary key auto_increment comment '主键',
    name varchar(10) not null unique comment '姓名',
    age int check ( age > 0 && age <= 120 ) comment '年龄',
    status char(1) default '1' comment '状态',
    gender char(1) comment '性别'

) comment '用户表';

-- 插入数据
insert into yuser(name,age,status,gender) values ('T1',19,'1','男'),('T2',25,'0','男');
insert into yuser(name,age,status,gender) values ('T3',19,'1','男');

约束演示2

非空约束

代码语言:javascript
复制
insert into yuser(name,age,status,gender) values (null,19,'1','男');

约束演示3

唯一约束

代码语言:javascript
复制
insert into yuser(name,age,status,gender) values ('T3',19,'1','男');

约束演示4

主键约束

代码语言:javascript
复制
insert into yuser(name,age,status,gender) values ('T4',89,'1','男');

Created with Raphaël 2.3.0 为什么这里是主键5而不是4?

⚠️原因:刚刚虽然插入失败了但它也申请到了主键4

约束演示5

检查约束

代码语言:javascript
复制
insert into yuser(name,age,status,gender) values ('T5',121,'1','男');

约束演示6

默认约束

代码语言:javascript
复制
insert into yuser(name,age,gender) values ('T5',120,'男');

图形化界面创建表

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-02-13,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 约束
    • 定义
    • 目的
  • Exercises
    • 约束演示1
    • 约束演示2
    • 约束演示3
    • 约束演示4
    • 约束演示5
    • 约束演示6
  • 图形化界面创建表
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档