我使用的是Loopback 3和SQL。我们在SQL表中有2000万行,当我们使用环回查询数据时,需要花费大量时间,进一步观察发现查询在SQL中被阻塞。注意到环回自动生成的查询没有任何WITH (NOLOCK)
。如何为每个SELECT
查询添加WITH (NOLOCK)
?
使用Transaction.READ_UNCOMMITTED
将生成WITH (NOLOCK)
。
例如:
YourModel.beginTransaction({isolationLevel: YourModel.Transaction.READ_UNCOMMITTED}, (err, tx) => {
// Now we have a transaction (tx)
// Write the queries here
// Then run commit the transaction:
tx.commit(err => {});
});
有关更多详细信息,请参阅文档。