自学互联网 2022-08-22 10:16 采纳率: 66.7%
浏览 13
已结题

数据库隐藏数据表中指定的数据

需求:在前端要删除一条数据,但是不能直接在数据库里把那条数据删除,想通过某种方法将该数据隐藏,不在前端显示,达到和删除数据一样的效果

  • 写回答

3条回答 默认 最新

  • 狂龙骄子 2022-08-22 11:47
    关注

    删除方式分:

    1. 物理删除:直接从硬盘中删除,使用delete from 语句(不是truncte table噢)。

      优点:可以快速释放表占用空间;查询的是最新数据;如果操作前开启binlog可以回滚;
      注意:where条件组合是设计的需要条件,不要误操作;

    2. 逻辑删除:
      也称软删除,即通过添加字段来控制 del_flag (0-有效、1-删除)。在where条件中添加 del_flag=0 只返回有效记录给前端。

      优点:自增长字段ID连续;即使误操作,也可以快速恢复软删除记录;
      注意:记录一直存在,表占用空间不断增大;所有相关查询、更新、删除 操作,添加上 软删除字段,确保只针影响有效记录;表中如果有唯一约束,需要特殊处理,确保不出现两条相同的 软删除记录 而产生冲突。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 8月30日
  • 已采纳回答 8月22日
  • 创建了问题 8月22日