前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【MySQL】学习约束并通过图形化界面创建表

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

作者头像
用户10920432
发布2024-02-14 10:32:05
1270
发布2024-02-14 10:32:05
举报

约束

定义

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

目的

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

约束

描述

关键字

非空约束

限制该字段的数据不能为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 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 约束
    • 定义
      • 目的
      • Exercises
        • 约束演示1
          • 约束演示2
            • 约束演示3
              • 约束演示4
                • 约束演示5
                  • 约束演示6
                  • 图形化界面创建表
                  相关产品与服务
                  云数据库 MySQL
                  腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档