SET LOCK_TIMEOUT (Transact-SQL)

指定语句等待锁释放的毫秒数。

主题链接图标Transact-SQL 语法约定

语法

SET LOCK_TIMEOUT timeout_period

参数

  • timeout_period
    在 Microsoft SQL Server 返回锁定错误前经过的毫秒数。值为 -1(默认值)时表示没有超时期限(即无限期等待)。

    当锁等待超过超时值时,将返回错误。值为 0 时表示根本不等待,一遇到锁就返回消息。

注释

在连接开始时,该设置的值为 -1。设置更改后,新设置在其余的连接时间里一直有效。

SET LOCK_TIMEOUT 的设置是在执行或运行时设置,而不是在分析时设置。

READPAST 锁提示为该 SET 选项提供了另一种方式。

CREATE DATABASE、ALTER DATABASE 和 DROP DATABASE 语句不使用 SET LOCK_TIMEOUT 设置。

权限

要求具有 public 角色的成员身份。

示例

下面的示例将锁超时期限设置为 1800 毫秒。

SET LOCK_TIMEOUT 1800
GO