一个简单的 SQL 语句超时

A simple SQL statement is timing out

这是一个非常简单的SQL语句:

Update FosterHomePaymentIDNo WITH (ROWLOCK) Set FosterHomePaymentIDNo=1296

但是当我从 ASP.NET WebForms 应用程序的上下文中执行它时超时。

这会不会和rowlock有关?我如何才能确保此 SQL 语句 运行 在合理的时间内完成而不损害 table 的完整性?我怀疑删除 rowlock 会有所帮助,但我们可以 运行 到不同的用户同时更新 table。

是的,这是一个只包含一列和一行的 "next ID" table;我不知道为什么要这样设置而不是使用标识列甚至 select max(id) + 1!

如果一行 table 的更新需要很长时间,它可能被另一个在尚未提交的事务中更新它的会话阻止。这就是为什么您不想生成这样的 ID。