自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SQL Server 2000 自定義鎖超時(shí)的概述

數(shù)據(jù)庫(kù) SQL Server
以下的文章主要描述的是SQL Server 2000 自定義鎖超時(shí),以下就是對(duì)SQL Server 2000 自定義鎖超時(shí)的詳細(xì)內(nèi)容介紹,望大家借鑒。

此文章主要向大家描述的是SQL Server 2000 自定義鎖超時(shí),當(dāng)由于另一個(gè)事務(wù)已擁有一個(gè)資源的沖突鎖,會(huì)使 Microsoft® SQL Server™ 2000 無(wú)法將鎖授權(quán)給該資源的某個(gè)事務(wù)時(shí),該事務(wù)被阻塞以等待該資源的操作完成。

如果這導(dǎo)致了死鎖,則SQL Server 將終止其中參與的一個(gè)事務(wù)(不涉及超時(shí))。如果沒(méi)有出現(xiàn)死鎖,則在其它事務(wù)釋放鎖之前,請(qǐng)求鎖的事務(wù)被阻塞。默認(rèn)情況下,沒(méi)有強(qiáng)制的超時(shí)期限,并 且除了試圖訪(fǎng)問(wèn)數(shù)據(jù)外(有可能被無(wú)限期阻塞),沒(méi)有其它方法可以測(cè)試某個(gè)資源是否在鎖定之前已被鎖定。

說(shuō)明 sp_who 系統(tǒng)存儲(chǔ)過(guò)程可用于確定進(jìn)程是否正被阻塞以及被誰(shuí)阻塞。LOCK_TIMEOUT 設(shè)置允許應(yīng)用程序設(shè)置語(yǔ)句等待阻塞資源的最長(zhǎng)時(shí)間。當(dāng)語(yǔ)句等待的時(shí)間大于LOCK_TIMEOUT 設(shè)置時(shí),系統(tǒng)將自動(dòng)取消阻塞的語(yǔ)句,并給應(yīng)用程序返回"已超過(guò)了鎖請(qǐng)求超時(shí)時(shí)段"的 1222 號(hào)錯(cuò)誤信息。

但是,SQL Server 不回滾或取消任何包含該語(yǔ)句的事務(wù)。因此,應(yīng)用程序必須有捕獲 1222 號(hào)錯(cuò)誤信息的錯(cuò)誤處 理程序。如果應(yīng)用程序沒(méi)有捕獲錯(cuò)誤,則會(huì)繼續(xù)運(yùn)行,并未意識(shí)到事務(wù)中的個(gè)別語(yǔ)句已取消,從而當(dāng)事務(wù)中的后續(xù)語(yǔ)句可能依賴(lài)于那條從未執(zhí)行的語(yǔ)句時(shí), 導(dǎo)致應(yīng)用程序出錯(cuò)。

執(zhí)行捕獲錯(cuò)誤信息 1222 的錯(cuò)誤處理程序使應(yīng)用程序得以處理發(fā)生超時(shí)的情況,并采取補(bǔ)救操作,例如可以自動(dòng)重新提交阻塞的語(yǔ)句或者回滾整個(gè)事務(wù)。

若要確定當(dāng)前 LOCK_TIMEOUT 設(shè)置,請(qǐng)執(zhí)行 @@LOCK_TIMEOUT 函數(shù),例如:

DECLARE @Timeout intSELECT @Timeout = @@lock_timeoutSELECT @TimeoutGO-----------------------------------------------------------------SET LOCK_TIMEOUT指定語(yǔ)句等待鎖釋放的毫秒數(shù)。語(yǔ)法SET LOCK_TIMEOUT timeout_period參數(shù)timeout_period是在 Microsoft® SQL Server™ 返回鎖定錯(cuò)誤前經(jīng)過(guò)的毫秒數(shù)。值為 -1(默認(rèn)值)時(shí)表示沒(méi)有超時(shí)期限(即無(wú)限期等待)。當(dāng)鎖等待超過(guò)超時(shí)值時(shí),將返回錯(cuò)誤。

值為 0 時(shí)表示根本不等待,并且一遇到鎖就返回信息。注釋在連接開(kāi)始時(shí),該設(shè)置的值為 -1。設(shè)置更改后,新設(shè)置在其余的連接時(shí)間里一直有效。SET LOCK_TIMEOUT 的設(shè)置是在執(zhí)行或運(yùn)行時(shí)設(shè)置,而不是在分析時(shí)設(shè)置。

READPAST 鎖定提示為該 SET 選項(xiàng)提供了另一種方式。權(quán)限SET LOCK_TIMEOUT 權(quán)限默認(rèn)授予所有用戶(hù)。示例下例將SQL Server 2000 自定義鎖超時(shí)期限設(shè)置為 1,800 毫秒。SET LOCK_TIMEOUT 1800GO

SQL Server 2000 自定義鎖超時(shí)

上述的相關(guān)內(nèi)容就是對(duì)SQL Server 2000 自定義鎖超時(shí)的描述,希望會(huì)給你帶來(lái)一些幫助在此方面。

【編輯推薦】

  1. SQL Server重復(fù)數(shù)據(jù)刪除的2個(gè)操作方案
  2. MS SQL Server 未公開(kāi)的加密函數(shù)有哪些?
  3. 快速對(duì)SQL Server鎖機(jī)制進(jìn)行掌握的竅門(mén)
  4. 用SQL Server 2005DDL觸發(fā)器對(duì)數(shù)據(jù)庫(kù)進(jìn)行監(jiān)控
  5. SQL Server刪除重復(fù)數(shù)據(jù)的2個(gè)實(shí)用方案
責(zé)任編輯:佚名 來(lái)源: 電子工業(yè)出版社
相關(guān)推薦

2010-07-20 08:48:14

SQL Server

2010-06-29 17:27:14

SQL Server

2010-09-14 16:47:23

SQL自定義函數(shù)

2010-10-20 16:07:48

SQL用戶(hù)自定義角色

2010-09-14 16:59:39

SQL自定義函數(shù)

2010-06-28 11:00:46

SQL Server

2010-07-09 14:30:56

SQL Server

2022-10-09 08:35:06

SQL自定義排序

2022-04-01 15:59:22

SQLPostgreSQL審計(jì)

2009-04-09 09:51:09

ASP.NETSQL Server 自定義分頁(yè)

2010-11-10 15:23:55

SQL SERVER

2010-09-06 15:41:34

SQL函數(shù)存儲(chǔ)過(guò)程

2015-02-12 15:33:43

微信SDK

2010-06-17 10:43:21

SQL Server

2015-01-14 15:06:48

定義相機(jī)

2010-11-12 13:34:02

動(dòng)態(tài)sql語(yǔ)句

2015-02-12 15:38:26

微信SDK

2015-07-22 17:27:41

SQL SERVER 鏈接

2010-07-26 11:27:43

SQL Server打

2010-07-06 11:36:16

SQL Server集
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)