跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • mysql 添加一条数据,需要判断数据是否重复。用组合索引好,还是查询数据后代码判断比较好,还是说有其他方法
未分類
21 7 月 2020

mysql 添加一条数据,需要判断数据是否重复。用组合索引好,还是查询数据后代码判断比较好,还是说有其他方法

mysql 添加一条数据,需要判断数据是否重复。用组合索引好,还是查询数据后代码判断比较好,还是说有其他方法

資深大佬 : duoyuanyz 10

感觉用异常处理方便些,只管插入就行了。
大佬有話說 (18)

  • 資深大佬 : qsbaq

    当然得设置唯一键

  • 資深大佬 : qsbaq

    设置唯一索引,如果数据可以覆盖,就用 sql 里面的 replace into,否则就 insert into,看然后抓报错

  • 資深大佬 : playniuniu

    不对吧,用异常那得是唯一索引啊,数据不可能都做索引吧。

    再说了重复分很多种,单 KEY 还是多 KEY 重复呢?

  • 資深大佬 : takemeaway

    有逻辑删除需求的,唯一键会特别坑。

  • 資深大佬 : zsdroid

    判断是否重复,然后的业务逻辑是啥?

  • 資深大佬 : 1018ji

    联合唯一索引?

  • 資深大佬 : rr41ns

    伪删除的坑埋了

  • 資深大佬 : jugelizi

    得是数据库唯一索引才行。代码单个线程逻辑判断不行的,多线程和分布式环境下不适用。

  • 資深大佬 : raysmond

    unique 约束啊

  • 資深大佬 : VictorJing94

    看业务复杂度,简单的就主键 /唯一+捕获“唯一性冲突”异常,复杂点的就要先查出来再判断。但你问得是组合索引,说明不是单个字段,那业务复杂度就不会简单,必须选后者。

  • 資深大佬 : passerbytiny

    数据重复的定义是啥?是只要 key 重复就算还是整行数据所有字段都相等?

  • 資深大佬 : littlewing

    unique index
    insert ignore
    获取 insert id

  • 資深大佬 : realpg

    不是特别要求效率的话还是查一下吧,业务上的事别埋坑

  • 資深大佬 : FFFire

    加全局锁 然后查一遍插入

  • 資深大佬 : Yuicon

    互联网没有物理删除

  • 資深大佬 : Tokiomi

    建议使用逻辑,唯一索引不会使用 change buffer, 会影响插入效率

  • 資深大佬 : wangsilence

    锁

  • 資深大佬 : cs3230524

    https://stackoverflow.com/questions/1361340/how-to-insert-if-not-exists-in-mysql/1361368

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具