mysql如何逻辑删除_mysql逻辑删除如何恢复

在项目中,一般会遇到这种情况:逻辑删除以及多关联不删除

逻辑删除(软删除):逻辑删除就是对要被删除的数据打上一个删除标记,通常使用一个is_deleted字段标示行记录是不是被删除(或者使用一个status字段代表所谓的“删除”状态),在逻辑上是数据是被删除的,但数据本身是依然存在的。

推荐课程:MySQL教程。

5cd4e895782c2520.jpg

在前端页面中删除了,也不显示了,其实数据库中并没有删除,只是根据了一个状态字段,0启动,1停用的思路来达成。

所以逻辑删除就是只是将一个名为status字段进行更改,来达到前端页面是否显示的方式,其数据本身并没有被删除,想要恢复只需要改回status字段即可。

思路:

在XML中写查询SQL时,多加一个条件,库中的状态字段SELECT * FROM md_drainage_basin

and basin_name LIKE concat('%',#{basinName},'%')

AND state = #{state}

ORDER BY sort_order

那我们给前端页面时候的数据,就要自己在Java代码中进行默认操作,因为前端是不会在查询的传一个状态码的,后台自己生成mdDrainageBasin.setState(0);

List list = mdDrainageBasinMapper.findByQuery(mdDrainageBasin);

默认把状态0启动set到实体类中,再进行查询,这样前端看到的只有状态为0的数据

逻辑删除是把状态码进行更新,更新成1,调用update而不是delete,但考虑到多表关系,例如流域下面挂着水系,逻辑删除一条流域,那下面的水系也要进行逻辑删除不给与显示,这时可根据判断,如果流域下面有相应水系,则不删除,不然删除MdDrainageBasin mdDrainageBasin = mdDrainageBasinService.findById(id);

List list = mdWaterSystemMapper.findByWater(mdDrainageBasin.getBasinCode());

if (list.size() > 0) {

return ResponseMsgUtil.failure();

} else {

mdDrainageBasin.setState(1);

mdDrainageBasinService.update(mdDrainageBasin);

return ResponseMsgUtil.success(mdDrainageBasin);

}

根据前端传入的Id进行查询哪一条流域,这条流域下面有多少水系,有水系,不删除,没水系,删除

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/522072.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

手把手,教你用MaxCompute+OpenSearch搭建分布式搜索引擎

摘要: 最近,经常有客户咨询如何低成本搭建高性能的海量数据搜索引擎,比如实现公众号检索、影讯检索等等。由于客户的数据在阿里云上,所以希望找到云上解决方案。笔者开始调研一些云上产品,很多人向我推荐了OpenSearch&…

再获绿色等级5A称号!揭开腾讯数据中心节能环保黑科技

9月3日北京,腾讯目前位于深圳最大的数据中心,“腾讯光明中国移动|万国数据数据中心二期”荣获运行5A绿色数据中心称号,达到了“数据中心绿色等级评估”的最高等级。该数据中心绿色分级评估由ODCC联合中国信通院、绿色网格TGGC发起&#xff0c…

MaxCompute_2_MaxCompute数据迁移文档

摘要: 乍一看标题会以为是不是作者写错了怎么会有从MaxCompute到MaxCompute迁移数据的场景呢在实际使用中已经有客户遇到了这种场景比如两个网络互通的专有云环境之间数据迁移、公共云数加DataIDE上两个云账号之间数据迁移、还有网络不通的两个MaxCompute项目数据迁…

printf 指针地址_指针搞都不懂,好意思说自己会C语言?

C语言面试必问知识点之「指针」一、指针相关概念指针与地址我们使用的计算机,系统为了更好地管理我们的内存,就为内存区的每一个字节都分配一个唯一编号,这就是“地址”。指针的实质就是地址,就是这一个个编号。指针变量变量在编译…

开启数据科学职业生涯的8个基本技巧

摘要: 本文为数据科学家开创数据科学事业铺平了道路。只要按照这八个小贴士来做,你就能让自己的职业生涯有一个良好的开端。Nick Bostrom(译者注:Nick Bostrom是牛津大学哲学系的教授,是人类未来研究院的创始人和主任。…

WIAC上,华为展区都有点儿啥?

戳蓝字“CSDN云计算”关注我们哦!谈及计算产业的变迁,我们了解到其先后经历了大型计算机、小型机/x86服务器阶段,并同时开创了敏捷、创新、体验好、省成本的Cloud 1.0以及Cloud 2.0时代,在云计算、5G与AI等创新技术不断叠加发展的…

【技术系列】浅谈GPU虚拟化技术(第一章)

摘要: GPU深度好文系列,阿里云技术专家分享 第一章 GPU虚拟化发展史 GPU的虚拟化发展历程事实上与公有云市场和云计算应用场景的普及息息相关。如果在10年前谈起云计算,大部分人的反应是“不知所云“。但是随着云计算场景的普及,概…

php如何删除数据mysql数据库_php如何删除数据库

php如何删除数据库1、首先查看有哪些数据库2、使用php删除test2<?php $dbhost localhost; // mysql服务器主机地址$dbuser root; // mysql用户名$dbpass root; // mysql用户名密码$conn mysqli_connect($dbhost, $dbuser, $dbpass);if(! $conn ){die(连接失败: . mysq…

Mac 神兵利器(二) 极简软件清单

摘要&#xff1a; 作为一个非常爱好折腾的Mac重度用户&#xff0c;在尝试了不少于50次重装系统经历以及安装了几乎所有软件类别的N多软件后&#xff0c;决定分享一下自己的软件清单。 选择app的三个原则&#xff1a; 尽量使用系统原生软件&#xff0c;比如日历&#xff0c;提醒…

解决 idea 运行 Spring Boot 项目启动慢的问题

同事win10启动Spring Boot工程只要3秒左右&#xff0c;我的启动要30秒。开始以为是CPU差距太大&#xff0c;后来才觉得不是这样&#xff01; 解决方案 hostname命令查看自己的 hostname 注意修改 hosts 文件时&#xff0c;ip 与域名之间要换成两个 tab 键。 127.0.0.1 PC-2…

亚马逊首席科学家李沐「实训营」国内独家直播,马上报名 !

开学了&#xff0c;别人家的学校都开始人工智能专业的学习之旅了&#xff0c;你呢&#xff1f;近年来&#xff0c;国内外顶尖科技企业的 AI 人才抢夺战愈演愈烈。华为开出200万年薪吸引 AI 人才&#xff0c;今年又有 35 所高校新增人工智能本科专业&#xff0c;众多新生即将开展…

Windows Server Version 1709 管理之入门篇

摘要&#xff1a; 相信有部分同学们会有这样的体验&#xff0c;在公有云上购买了Windows Server Version 1709数据中心版的虚拟机&#xff0c;通过远程连接进去之后&#xff0c;里面全是黑乎乎的一个命令行&#xff0c;其它啥也没有。这&#xff0c;一脸懵懂啊。 相信有部分同学…

切面是异步还是同步操作‘_细说JS异步发展历程

知其然知其所以然&#xff0c;首先了解三个概念&#xff1a;1.什么是同步&#xff1f;所谓同步&#xff0c;就是在发出一个"调用"时&#xff0c;在没有得到结果之前&#xff0c;该“调用”就不返回。但是一旦调用返回&#xff0c;就得到返回值了。换句话说&#xff0…

数据科学家需要掌握的10项统计技术,快来测一测吧

摘要&#xff1a; 本文给出了数据科学应用中的十项统计学习知识点&#xff0c;相信会对数据科学家有一定的帮助。无论你是不是一名数据科学家&#xff0c;都不能忽视数据的重要性。数据科学家的职责就是分析、组织并利用这些数据。随着机器学习技术的广泛应用&#xff0c;深度学…

java获取mysql的自增列_java - MyBatis如何获取Mysql自增id

问 题INSERT INTO USER(name,age,address,loan_type)VALUES(#{name},#{age},#{address},#{loanType});user表中id自增&#xff0c;添加过一条数据后&#xff0c;可以得到主键id&#xff1b;DEBUG [main] - > Preparing: INSERT INTO USER(name,age,address,loan_type) VALUE…

hosts文件位置在哪里

C:\Windows\System32\drivers\etc\hosts

反转!2019程序员吸金榜来了,AI程序员刷爆了..

前两天在网上发现一个热门话题&#xff1a;“做开发一年&#xff0c;在北京月薪不到1万&#xff0c;有点迷茫。” 其中&#xff0c;这个回答我永远忘不了&#xff1a;在这短短的一条信息里&#xff0c;小编佩服不仅仅是毕业一年的AI程序员拿到年薪60万&#xff0c;而是这一番回…

前端详细设计文档怎么写_UI设计师简历应该怎么写?

像这种分享&#xff0c;常规开篇都应该说说当前的就业趋势啦&#xff0c;分析分析行业形势啦这类的但我不想按流程写行业不论什么时候分析&#xff0c;它都没好过&#xff0c;什么红利期什么风口&#xff0c;那更是从来没赶上过。但凡我能跟点风&#xff0c;我也不能到现在还没…

阿里云携领先SDN能力,亮相全球网络技术盛会ONS

摘要&#xff1a; 网络通讯届盛会Open Network Summit(ONS)于3月29日落下了帷幕。作为开源网络届首屈一指的世界性大会&#xff0c;今年在洛杉矶举办的ONSNA2018已经是第七年举办了。参会者囊括了来自电信运营商、云服务提供商、网络设备制造商、芯片厂商、网络软件开发商、研究…

容器开启数据服务之旅系列(一):Kubernetes如何解自建PostgreSQL运维之痛

摘要&#xff1a; 通过阿里云Kubernetes容器服务,开启你的数据服务之旅 &#xff08;一&#xff09;云上运维自建数据库之痛&#xff0c;使用容器服务自动恢复数据库postgresql实例 概述 本文为大家介绍一种容器化的数据服务 posgresql db on ACK&#xff0c;通过使用云盘自动挂…