我有两个用SequelizeJS写的查询
读:
Object.getObject = async function(){
return await this.findOne();
}
写:
Object.updateObject = async function(info){
const t = await sequelize.transaction();
const currentObject = await Object.findOne();
const updatedObject = currentObject.updateAttributes(info, t);
t.commit();
return updatedObject;
}
当您转到API中的URL时会触发这些查询。
我首先触发写入查询,然后在处理成功写入请求的promise中,我获得更新的对象。
API.updateObject().then((res) => {
API.getObject();
})
尽管在UPDATE HTTP请求返回后触发了GET HTTP请求和读取查询,并将其作为承诺处理。读取查询首先完成,并返回一个对象模型,该对象模型处于被所述写入查询修改之前的状态。
在写入查询中,尽管首先被触发并指示它已完成。触发读取查询,该查询完成并在写入完成之前检索较旧的对象模态。
关于PostgreSQL是否有一些我不知道的事情以及它在读取和写入同一个对象时如何处理查询序列?