以下 SQL 语句偶尔会在我的 mssqlserver 2000 服务器中产生死锁
delete from tb_intervaloServico
where idFeriado in (
select ints.idIntervalo
from tb_periodicidadeServico ps, tb_intervaloServico ints
where ints.idPeriodicidadeServico=ps.idPeriodicidadeServico
and idservicoContrato='7f20b4af-9076-48f9-a861-8b78273eadc3'
and fromFixa=0)
出于某种原因,删除获得了阻塞状态并且没有完成(?)我发现被此阻塞的唯一其他进程是在周末运行以重新创建索引的维护计划,所以我不知道有什么可以正在产生问题。
这是删除生成的锁...
Object Lock Type Mode Status Owner
tb_intervaloServico TAB IX GRANT Xact
tb_periodicidadeServico TAB IS GRANT Xact
有人对如何找到问题的根源有任何指示吗?我怀疑表 tb_intervaloServico 是阻塞的根,因为它在删除和选择中被调用,但我无法重现该行为。