sql delete删除的数据怎么恢复_SQL基础第二讲:多种数据删除操作

    还是拿excel举例吧,这样比较容易理解~~

    比如表格中有一张人员信息表

ccc0dd284fbd75599bcfaa8f10d44da4.png

    一、对于整表而言 我们可以进行删除表操作    

2ae7a16c89fd86cb4ae430682b84e83a.png

    操作以后,整个工作表就会被删除,你也在这个表格文件中找不到这个表的任何信息

    这个在数据库中 可以用 

drop table 人员信息表;

    这一段代码来实现,执行以后我们可以看到 city这张表在数据库中就被删除了

795e228fcefcb3a041d9f12e01d6ef79.png

    这种删除代表着删除这张表的所有信息,是彻底的删除。

   二、有时候我们可能并不想删除这张表,只是想着删除其中的所有内容,但是这个表的框架还保留

    在excel中,我们可以点击左上角的倒立三角,选中所有的数据后,右键选择清除内容 中的全部进行删除,删除后表名称还在,只是将数据进行清除,如果不选择字段名称的话,字段名称也会保留下来。

d5db6075771fa5d7f1e1df6a171ba2d2.png

    在数据库中,我们使用

truncate table 人员信息表;

    这段代码来进行全表数据的清除,这样与上面的drop 相比,不会将表的框架,比如表名称,字段名进行删除。只是将表的数据删除

40f3a0a6a9986fa9366d2d4d7b3ba61d.png

    通过对比可以看到 表的信息还在数据库中,只是表中的数据变成了0行。

    在工作中,如果是全量更新某张表,我们通常会先将表的数据truncate 然后在插入数据。

    三、如果我们只是想删除某一部分数据

    在excel中,我们可以通过筛选按钮,筛选出想要删除的数据,然后选中进行删除

23f6ff1978d42d2a2abf2292b1f3aba2.png

    这里可以输入各种条件,然后删除符合条件的数据

    在数据库中,我们想要删除部分数据,需要使用

delete from city where b>1;

52ee1a508b482ee64ecf93b384c5747f.png

    可以看到,数据库中b大于1的数据已经被删除。

    工作中增量更新数据,通常在跑数之前会使用delete 语句,将要跑数的数句进行删除,然后再将新数据插入,这样是为了防止重跑数据的时候,插入重复的数据。

    总结:今天我们介绍了三种数据的删除方式:

    1.drop table 表

    2.truncate table 表

    3.delete from 表  where 条件

    这三种方式用在不同的场合,delete 如果不加条件,也可以实现和truncate同样的效果,但是速度远远不如truncate  并且 高水位线也不会恢复。

    这是针对行数据进行删除的操作,我们还有一种很少用到的操作就是针对某列数据进行删除,直接删除某一列。

       直接删除某一列

ALTER TABLE 表名 DROP COLUMN 列名

    在工作中,这种方法基本用不到,除非是上线的时候回滚脚本会写这个,因为这个字段如果你自己不用,别人正在用的话,你将他删除,下游的作业和数据就会报错,从而导致非常严重的后果。

    今天就先聊到这里,好像前两次的课程号写的都是 SQL 第一讲1742be2765f58d40e4c900750737cc2b.png,但是修改不了了,以后就按照顺序来写课程吧!

    祝大家周末愉快~~

    刚开始编写文章,很多地方都有不足,希望以后可以为大家贡献出更好的文章,谢谢大家!

    ps:还没有讲解如何安装数据库软件,我会在公众号的菜单栏中添加了安装教程供大家安装,谢谢6e2dfd0c422ad8066a347a8a6452d6db.png6e2dfd0c422ad8066a347a8a6452d6db.png,碰到安装上的问题也可以给作者发消息或者留言~~

                    b2bcce610badead84ecee6f8294a8870.png  感觉还不错的话,点下在看鼓励一下作者吧  b2bcce610badead84ecee6f8294a8870.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值