我注意到在node.js中验证db中的数据并不那么容易。例如,我有下一段代码
return dbService.checkPossibilityAddEntityBySomeData(t, data)
.then(function(itPossibleAdd) {
if(!itPossibleAdd) {
throw new Error();
}
return dbService.add(t, entity);
})
如果查询返回true,我添加新实体。
但是我面临着多个进程尝试添加相同实体的情况,当一个进程进行验证但仍未添加实体时,另一个进程已经添加了该实体。结果我在数据库中得到了错误的数据。
如何处理?