我想插入一個新行并立即更新它,都在同一個 sequelize 事務中,這可能嗎?
到目前為止我的代碼:
let transaction;
try {
transaction = await dbcontext.sequelize.transaction();
const newRole = await dbcontext.Role.create({
name: "New Role"
}, { transaction });
await dbcontext.Role.update(
{
name: "New name",
},
{
where: {
id: newRole.id,
},
}, { transaction }
);
await transaction.commit();
console.log("Role commited");
} catch (error) {
console.log("Rollback in progress");
if (transaction) {
await transaction.rollback();
}
console.log(error);
}
uj5u.com熱心網友回復:
update只有兩個引數,因此該transaction選項應在選項旁邊指示where:
await dbcontext.Role.update(
{
name: "New name",
},
{
where: {
id: newRole.id,
},
transaction,
}
);
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/447892.html
標籤:javascript 节点.js sql服务器 交易 续集.js
