Loopback 4中如何实现事务
How to implement transaction in Loopback 4
我正在进行两次存储库调用,以更新数据库中两个不同表中的数据。我想实现一个交易。需要有关如何执行此操作的帮助。
https://loopback.io/doc/en/lb4/Using-database-transactions.html
从文档看来,事务只能在一个存储库中执行,而不是在两个存储库之间执行。
const created = await repo.create({title: 'Groceries'}, {transaction: tx});
const updated = await repo.update(
{title: 'Errands', id: created.id},
{transaction: tx},
);
// commit the transaction to persist the changes
await tx.commit();
但是我想要
const created = await repo1.create({title: 'Groceries'}, {transaction: tx});
const updated = await repo2.update(
{title: 'Errands', id: created.id},
{transaction: tx},
);
// commit the transaction to persist the changes
await tx.commit();
任何人都知道如何做到这一点。
const created = await repo1.create({title: 'Groceries'}, {transaction: tx});
const updated = await repo2.update( {title: 'Errands', id: created.id},{transaction: tx}, );
// commit the transaction to persist the changes await tx.commit();
是的,如果你的 repo1 和 repo2 属于同一个数据源,这是可能的。
更多信息here
我正在进行两次存储库调用,以更新数据库中两个不同表中的数据。我想实现一个交易。需要有关如何执行此操作的帮助。 https://loopback.io/doc/en/lb4/Using-database-transactions.html 从文档看来,事务只能在一个存储库中执行,而不是在两个存储库之间执行。
const created = await repo.create({title: 'Groceries'}, {transaction: tx});
const updated = await repo.update(
{title: 'Errands', id: created.id},
{transaction: tx},
);
// commit the transaction to persist the changes
await tx.commit();
但是我想要
const created = await repo1.create({title: 'Groceries'}, {transaction: tx});
const updated = await repo2.update(
{title: 'Errands', id: created.id},
{transaction: tx},
);
// commit the transaction to persist the changes
await tx.commit();
任何人都知道如何做到这一点。
const created = await repo1.create({title: 'Groceries'}, {transaction: tx}); const updated = await repo2.update( {title: 'Errands', id: created.id},{transaction: tx}, ); // commit the transaction to persist the changes await tx.commit();
是的,如果你的 repo1 和 repo2 属于同一个数据源,这是可能的。
更多信息here