SQL语句关于添加编辑等检验重名的业务实现(Java后台)

举报
辰兮 发表于 2022/03/22 23:05:15 2022/03/22
1.1k+ 0 0
【摘要】 hello你好我是辰兮很高兴你能来阅读,本篇整理了最近项目遇到的一些小问题,分享获取新知,大家一起进步! 最近遇到了很多关于添加名称,检验如果名称已经存在,那么提示无法正常添加,点击编辑修改的...

hello你好我是辰兮很高兴你能来阅读,本篇整理了最近项目遇到的一些小问题,分享获取新知,大家一起进步!

最近遇到了很多关于添加名称,检验如果名称已经存在,那么提示无法正常添加,点击编辑修改的时候,如果修改的名称已经存在那么也无法保存。

比如你创建数据库,数据库名称无法相同,创建表,一个库中的表无法同名,表中创建字段,字段名称无法相同,一层层环环相扣

在这里插入图片描述

业务场景:保存系统,如果系统的名称数据库中已经存在,我们会弹出提示warning,名称已经存在,请重新输入

解决思路1:你可以单独对要检验的属性,如名称,单独写一个接口发送一个请求给后台,后台判断,如果存在,那么进行提升,如果不存在进行保存的操作

//单独写一个校验名称的接口
if(){
 //如果存在走保存接口
api.save(object);
}
else{
//如果不存在直接不用调用保存的接口
//提示名称已经存在
}

  
 

好处: 当保存的接口业务逻辑较复杂的时候,我们这样执行速度更快效率更高,而不是将判断名称是否重复这个业务写到保存的接口里面(全写后台逻辑会负责,会增加响应时间)


解决思路2:在保存的方法中做对应的逻辑判断,如果名称重复,那么直接返回提示,不走接下来的保存操作

//首先查询出一个nameList的集合

//1.首先要对集合进行判空---这里我就就不写了
//2.如果这个集合中包含传过来的名字
if(nameList.contians(name)){
   return .... //返回提示名称已经重复
}

  
 

好处:我们不用写多的接口,在原来的方法中写一点逻辑判断即可

关于数据库中一定要学会用这个符号不等于<>,前端还是要传过来对象的id,查询所有除当前对象的名称集合

在这里插入图片描述
情况一:添加操作,这里没有id,所以自己查询出所有的名称,来与传来的名称比较即可。

情况二:编辑操作,这里有id,所以自己查询除自己以外的名称集合,当自己编辑后的名称在查询出来的集合当中,这里会有名称已经存在的提示,如果自己不修改名称的时候,这里刚好自己也可以放过自己。

关于数据库操作如何写
select name from Tab where id <> #{id}

  
 
SQL中,不等于一般dao写做“<>”或“!=”。

  
 

小结:主要是数据库中的操作一定要明确思路,使用不等于符合,直接取到对应需要的集合。


The best investment is to invest in yourself.

在这里插入图片描述

2020.11.11 晚22:00 愿你们奔赴在自己的热爱里!

文章来源: blessing.blog.csdn.net,作者:辰兮要努力,版权归原作者所有,如需转载,请联系作者。

原文链接:blessing.blog.csdn.net/article/details/109631779

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。