学习MySQL的第四天:约束(基础篇)

目录

一,概述:

二,约束演示:

三,外键约束:

●概念

1.添加外键 :

 2,删除外键:

3,删除/更新行为:

一,概述:

1. 概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据。
2.目的:保证数据库中数据的正确、有效性和完整性。

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

二,约束演示:

 验证上面的约束!!!

create table user(
    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 '用户表';

下面的那一行虽然会插入失败,但是仍然是从数据库中申请到了主键。

也可以通过图形化界面来创建表会更简单,只需勾选选项即可。

三,外键约束:

●概念


外键用来让两张表的数据之间建立连接,从而保证数据的一致性完整性。

 

 主从表。。  有外键的叫子表,与外键相关联的叫主表。 

 注意:目前上述的两张表,在数据库层面,并未建立外键关联,所以是无法保证数据的一致性和完整性的。

1.添加外键 :

 2,删除外键:

  

create table cmp(
    id int auto_increment comment 'ID' primary key,
    name varchar(50) not nuLl comment '姓名',
    age int comment '年龄',
    job varchar(20) comment '职位',
    salary int comment ' 薪资',
    entrydate date comment ' 入职时间',
    managerid int comment '直属领导ID',
    dept_id int comment ' 部门ID'
) comment '员工表';


INSERT INTO cmp (id,name,age, job, salary, entrydate, managerid, dept_id) VALUES
(1, '金庸',66,'总裁' ,20000, '2000-01-01',null,5),(2, '张无忌', 20, '项目经理' ,12500, '2005-12-05', 1,1),
(3, '杨逍',33,'开发',8400, '2000-11-03', 2,1),(4, '韦一笑',48, '开发' ,11000, '2002-02-05', 2,1),
(5, '常遇春',43, '开发' ,10500, '2004-09-07', 3,1),(6, '小昭',19, '程序员鼓励师' ,6600, '2004-10-12', 2,1);

create table dept(
    id int auto_increment comment' ID' primary key,
    name varchar(50) not nuLl comment ' 部门名称'
)comment' 部门表';

INSERT INTO dept (id, name) VALUES (1,'研发部'),(2, '市场部'),(3, '财务部'),(4,'销售部'),(5,'总经办');

3,删除/更新行为:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喜欢吃豆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值