Mysql 表的增删改查(进阶)

约束:

数据库针对数据进行一系列的校验,如果发现插入的数据不符合约束中的描述的校验规则,就会插入失败,为了更好地保证数据的正确性。

 

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;     //求最小值

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值