Mysql 表的增删改查(进阶)
程序员文章站
2022-05-07 22:40:45
...
约束:
数据库针对数据进行一系列的校验,如果发现插入的数据不符合约束中的描述的校验规则,就会插入失败,为了更好地保证数据的正确性。
1、not null(不可为空)
当设置 id 不可为空时
意图将id 设置为空就会报错
2、unique (唯一)
表示约束该类型数据不可重复,例如我们规定 id不能重复
当设定 id 中重复设定为 1 时会报错
也可以叠加使用:
3、default (指定默认值)
指定名字的起始默认值为 “unknow”
4、primary key (主键)
当我们将 id 设置为主键时:
将 id 设置为 null 的时候,报错不能为空:
将 id 重复设置为1的时候,报错不能重复:
5、auto_increment (自增长)
6、foreign key (外键约束)
foreign key (字段名) references 主表(列)
一对一关系
例如:
人对应身份证号码
一对多关系
例如:
一个学生对应多门成绩
多对多关系
例如:
多门课程的成绩对应多名学生
学生:甲乙丙丁
课程:语文、数学、英语、物理
成绩:语文成绩、数学成绩、英语成绩、物理成绩
新增(将一个表的内容添加到另一个表中)
insert into [表2] select name,decription from [表1];
//将表1 的内容添加到表2 中
先创建 user 表
此时就将 user 吻合的内容添加到了 user2 中
计算行数
select count(*) from user; //计算全部行的行数
select count([行名]) from user; //计算 [行名] 这一行的行数
当内容为空时,不计算 null 的行数
求列的和
select sum(score) from score; //求和
select avg(score) from score; //求平均值
select max(score) from score; //求最大值
select min(score) from score; //求最小值