首页新闻找找看学习计划

捕捉主键冲突异常和先查后插哪个更好

0
悬赏园豆:10 [待解决问题]

向数据库中插入记录的时候需要判断插入成功与否。
业务逻辑是:
如果主键已存在,视为该条记录已插入过,跳过之,返回false。
如果主键不存在,插入之,返回true。

因为牵扯到并发,先查后插效果可能没那么好。
所以异常肯定要捕捉,那么先查后插有没有存在的必要呢

轻红的主页 轻红 | 初学一级 | 园豆:187
提问于:2019-06-18 10:16

题外话,数据库层再设置个唯一约束

chengeng 4个月前

@chengeng: 这就是主键,有主键约束,

轻红 4个月前
< >
分享
所有回答(2)
0

还是可以要,相当于减少了冲突。

gw2010 | 园豆:1311 (小虾三级) | 2019-06-18 17:16
0

sql server 获取自增列下一个值或者获取指定表的主键值
IDENT_CURRENT('TableName')为当前的最大标识值,

IDENT_INCR('TableName')为设置的标识值增量,

然后你可以这样写
INSERT INTOTableName VALUES( IDENT_CURRENT('TableName') + IDENT_INCR('TableName'))
这样就同步了

熊泽-学习中的苦与乐 | 园豆:280 (菜鸟二级) | 2019-06-28 14:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册