我有一个用于报告目的的表格,每次用户从网络运行报告时都会插入数据。根据报表的参数,插入可以从单行到几千行不等。用于插入的 select 语句最多可以为插入运行 60 秒。它已经过优化,但由于数据库的复杂性,我无法进一步调整它。我的问题是 - 表格何时锁定以进行插入?是在调用存储过程时,在执行select语句时,还是在select语句执行完毕时?我想限制表被锁定的时间,以便在运行最多 50,000 行的大型报表时不会影响其他用户。
前任。
INSERT INTO reportTable
SELECT
Column a,
Column b
FROM
Table a
INNER JOIN
Table b
on b.ident = a.Bident
谢谢