mysql中的,增删改语句的实现,简单易学一看就懂

增删改语句

1.insert 语句

语法:

INSERT  INTO  table_name  (COLUMN1 ,COLUMN2 ,......)
VALUES
(VALUE1 [,VALUE2 [,......]);

省略列名:前提是按顺序插入所有列,值和列要一一对应一次录入多行数据

INSERT  INTO  table_name  (COLUMN1 ,COLUMN2 ,......)
VALUES 
(VALUE1 ,VALUE2 ,......),
(VALUE1 ,VALUE2 ,......),
(VALUE1 ,VALUE2 ,......);

#在innodb存储引擎下,会到自增断层

INSERT  INTO  table_name 
(COLUMN1 ,COLUMN2 ,......)
select VALUE1,VALUE1,[,......] union
select VALUE1,VALUE1,[,......] 

update 语句

UPDATE table_name 
SET COLUMN1={}, COLUMN2={}......
WHERE<表达式>

delete 删除语句

DELETE FROM table_name WHERE <表达式>

select 查询语句

select 列名1,列名2 #查询列 
from 表名 # 从某张表中可选
where 条件表达式
group by 列名
having 条件表达式
order by 列名
limit ?,? 分页

删除表中的数据:

delete: 根据条件删除,逐行删除。

truncate:整表删除,无法设定条件,效率高,自增列会重新计数,无法恢复数据;无法直接删除有外键引用的表。

#删除数据

#以数据行为单位进行逐行删除,删除速度较慢

# 安全,可以记录日志,需要的时候可以通过日志进行恢复

delete from 表 [where 条件]

#truncate 截断 、截取 

# 直接删除整张表中的数据,相当于先把物理表删了,然后又创建了一个新表

# 执行效率高,但是无法设定条件

# 自增列会重新计数

truncate table 表名;

 级联

涉及到有主外键关联的数据表:

1、删除数据时:需要先删外键表,再删主键表

2、更新数据时:

3、录入数据时:先录入主键,再录入外键

级联:当更新(删除)主键表中的数据时,外键表中引用的数据会自动更新(删除)

cascade:删除主键时自动删除外键表中引用的数据,修改时自动更新外键表中引用的数据

# on delete CASCADE  :开启 删除 级联

# on update CASCADE : 开启 更新 级联

alter table emp 

add CONSTRAINT fk_deptno FOREIGN key (deptno)

REFERENCES dept(deptno)

on delete CASCADE on update CASCADE;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

xiaoyangcv

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

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

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

打赏作者

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

抵扣说明:

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

余额充值