逻辑删除数据库中的数据。

网友投稿 773 2022-09-02

逻辑删除数据库中的数据。

逻辑删除数据库中的数据。

逻辑删除:数据库中的数据没有删除。但是在展示的时候、不会显示删除的数据。

物理删除:数据库中的数据删除。

逻辑删除的实现:

1、在表中新增加一个字段(比如:is_delete)其中1:代表当前用户存在、0:代表当前用户不存在。 然后在查询数据的时候就可以在sql中添加一个查询条件​​​where is_delete=1​​

核心 delete from customer where usercount=#{usercount} update customer set is_delete=0 where usercount=#{usercount}

2、进行删除的时候、实际上是修改该字段的状态。(更新操作)将可显示状态1改为不可显示状态0。这样在显示该数据的时候不会显示状态为0的。但是物理上还是有该条数据。

直接上代码:

mapper文件中的sql语句

delete from customer where usercount=#{usercount} update customer set is_delete=0 where usercount=#{usercount}

dao层代码

//查询所有 List queryCustomerList(); //物理删除 int deleteCustomer(String id); //逻辑删除 int logicalDeleteCustomer(String id);

service层代码

//查询所有 List queryCustomerList(); //物理删除 int deleteCustomer(String id); //逻辑删除 int logicalDeleteCustomer(String id);

serviceImpl实现类

//查询所有的用户信息 @Override public List queryCustomerList() { return customerMapper.queryCustomerList(); } //物理删除 @Override public int deleteCustomer(String id) { return customerMapper.deleteCustomer(id); } //逻辑删除 @Override public int logicalDeleteCustomer(String id) { return customerMapper.logicalDeleteCustomer(id); }

controller层

//物理删除用户 @RequestMapping("/customer/delete") public String deleteCustomer(String usercount,Model model){ try { int rs = customerMapper.deleteCustomer(usercount); if(rs > 0){ model.addAttribute("删除成功"); return "redirect:/customer"; }else{ model.addAttribute("删除失败"); return "redirect:/customer"; } } catch (Exception e) { e.printStackTrace(); } return "redirect:/customer"; } //逻辑删除 @RequestMapping("/customer/logicalDelete") public String logicalDeleteCustomer(String usercount,Model model){ try { int rs = customerMapper.logicalDeleteCustomer(usercount); if(rs > 0){ model.addAttribute("删除成功"); return "redirect:/customer"; }else{ model.addAttribute("删除失败"); return "redirect:/customer"; } } catch (Exception e) { e.printStackTrace(); } return "redirect:/customer"; }

前端页面

书籍列表 书籍展示页面


姓名 性别 年龄 邮箱 地址 操作
姓名 性别 年龄 邮箱 地址 删除

只是撸代码是万万不行滴

看一下数据库的数据:(再次说明一下:1:代表该用户存在、0:代表该用户不存在。逻辑删除就是将1改为0。数据库中的数据还是存在的)

前台页面展示(这里展示的数据就是数据中状态为1的数据。0:代表当前用户不存在、不给其展示)

进行逻辑删除操作

查看数据库中的数据变化

然后再看前台的数据展示

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:使用ssm框架搭建的图书管理系统
下一篇:PHP开发API接口与使用,可深入了解下(php api接口开发实例)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~