asp学习网: 首页 >> asp与数据库 >> sql server教程 >> 使用 SQL Server 时需要经常用到的几个设置选项

使用 SQL Server 时需要经常用到的几个设置选项

1. SET DEADLOCK_PRIORITY

说明:控制在发生死锁情况时会话的反应方式。如果两个进程都锁定数据,并且直到其它进程释放自己的锁时,每个进程才能释放自己的锁,即发生死锁情况。

语法:SET DEADLOCK_PRIORITY { LOW | NORMAL | @deadlock_var }

参数:LOW 指定当前会话为首选死锁牺牲品。Microsoft® SQL Server™ 自动回滚死锁牺牲品的事务,并给客户端应用程序返回 1205 号死锁错误信息。
   NORMAL 指定会话返回到默认的死锁处理方法。
   @deadlock_var 是指定死锁处理方法的字符变量。如果指定 LOW,则 @deadlock_var 为 3;如果指定 NORMAL,则 @deadlock_var 为 6。

注释:SET DEADLOCK_PRIORITY 的设置是在执行或运行时设置,而不是在分析时设置。

权限:SET DEADLOCK_PRIORITY 权限默认授予所有用户。 asp学习网,aspxuexi.com.



2. SET LOCK_TIMEOUT

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

语法:SET LOCK_TIMEOUT timeout_period

参数:timeout_period 是在 Microsoft® SQL Server™ 返回锁定错误前经过的毫秒数。值为 -1(默认值)时表示没有超时期限(即无限期等待)。
    当锁等待超过超时值时,将返回错误。值为 0 时表示根本不等待,并且一遇到锁就返回信息。

注释:在连接开始时,该设置的值为 -1。设置更改后,新设置在其余的连接时间里一直有效。
   SET LOCK_TIMEOUT 的设置是在执行或运行时设置,而不是在分析时设置。
   READPAST 锁定提示为该 SET 选项提供了另一种方式。

权限:SET LOCK_TIMEOUT 权限默认授予所有用户。

示例:下例将锁超时期限设置为 1,800 毫秒。

   SET LOCK_TIMEOUT 1800
   GO



3. @@LOCK_TIMEOUT

说明:返回当前会话的当前锁超时设置,单位为毫秒。

语法:@@LOCK_TIMEOUT

返回类型:integer

注释:SET LOCK_TIMEOUT 允许应用程序设置语句等待阻塞资源的最长时间。当一条语句已等待超过 LOCK_TIMEOUT 所设置的时间,则被锁住的语句将自动取消,并给应用程序返回一条错误信息。
   在一个连接的开始,@@LOCK_TIMEOUT 返回一个 –1值。

示例:下面的示例显示当一个 LOCK_TIMEOUT 值未被设置时的结果集。

   SELECT @@LOCK_TIMEOUT
   下面是结果集:
   ----------------
   -1

   下面的示例设置 LOCK_TIMEOUT 为 1800 毫秒,然后调用 @@LOCK_TIMEOUT。

   SET LOCK_TIMEOUT 1800
   SELECT @@LOCK_TIMEOUT

   下面是结果集:
   ------------------------------
   1800 

asp学习网,aspxuexi.com.

from:asp学习网/title:使用 SQL Server 时需要经常用到的几个设置选项/ time:2007-4-2 17:53:47

本文主题SQL Server

SQL Server数据库设计表和字段的经验

sql server 数据恢复专题整理

sql server:触发器 基础文档整理

Microsoft SQL Server 2000 DTS文档

Microsoft OLE DB Provider for SQL Server 错误 '80040e31' 超时已过期

microsoft sql server (mssql)数据导入导出详解 (多图文档)

microsoft sql server (mssql)数据导入导出详解 企业管理器基本操作 (多图文档)

microsoft sql server (mssql)数据导入导出详解 (多图文档)

asp教程 ©2006-2007 aspxuexi.com | 关于站点 | 版权隐私 | 站内搜索
复制或者翻版 请于夜间进行