sm447288883 2016-05-27 10:12 采纳率: 0%
浏览 1725

查数据库,有则更新,无则插入

if(查数据不存在)
其他线程插入该数据;
本线程又插入该数据;
这时候就有两条插入的数据;
如何解

举一个具体的例子啊
A、B、C三个人向数据库插入张三这个用户
A、B新增-----调用save(){
if(没有张三)
插入张三
}

C导入----import(){
if(没有张三)
插入张三
}

  • 写回答

3条回答 默认 最新

  • threenewbee 2016-05-27 10:20
    关注

    使用事务,把
    if(查数据不存在)
    插入该数据;

    放在事务中

    或者,使用主键标识数据,数据库层面不允许相同主键的数据插入

    评论

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置