检查约束语句

从 MySQL 8.0.19 版本开始, MySQL 支持了检查约束。检查约束允许你在表定义中声 明条件,并确保符合该条件的数据才能插入或更新到相应的列中。

creat table employee(

id int AUTO_INCREMENT PRIMARY KEY,

name VARCHAR(50),

age INT,

email VARCHAR(100),

CHECK (age>= 18));

ALTER TABLE 表名 CHANGE 列名 列名 列类型 CHECK(condition);

ALTER TABLE 表名 MODIFY 列名 列类型 CHECK(condition);

ALTER TABLE 表名 ADD CONSTRAINT 列名 CHECK(condition);

- 删除检查约束

ALTER TABLE 表名 DROP CONSTRAINT 约束名;

外键约束

ALTER TABLE 从表表名 ADD [CONSTRAINT] 约束名称 FOREIGN KEY (从表字段) REFERENCES 主表表名(主表字段);

ALTER TABLE goods ADD [CONSTRAINT] fk_category_no FOREIGN KEY (category_no) REFERENCES category(no);

-- 删除

ALTER TABLE 表名称 DROP FOREIGN KEY 索引名 ;# 设置外键时的名称

constraint 如果后面没有设置约束名会自动生成一个;用来让两张表的数据之间建立连接,从而保证数据的一致性和完整性。 表中列的值来自于另外一张表的主键或唯一键的列称为外键 FK ,将被引用值的表称 为主表或父表,将引用值的表称为从表或子表。主表必须有主键

 删除主表数据时,会先检查从表中有没有对此数据的关联,如果有就不能直接 删除

可以删除外键,或 在 设 置 外 键 的 时 候 后 面 添 加 on delete cascade / on update cascade 在删除/更新主表时,级联删除/更新外键列的数据 在设置外键的时候后面添加 on delete set null / on update set null 在删除/更新主表时,外键列的值会变成null

聚合函数

select sum(列) from table_name [其他子句];

select max(列) from table_name [其他子句];

select min(列) from table_name [其他子句];

select avg(列) from table_name [其他子句];

select count(列) from table_name [其他子句];

group by

select 列1, 列2, (聚合函数) from table_name group by 列1, 列2;

having

having 是对 group by 分组后的结果集进行筛选。

select 列1, 列2, (聚合函数) from table_name group by 列1, 列2 having 分组后条件;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值