如何掌握SQL Server的鎖機制和鎖模式(4)_Mssql數據庫教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:揭秘操作日期的SQL語句大全1.顯示本月第一天 SELECTDATEADD(mm,DATEDIFF(mm,0,getdate()),0) selectconvert(datetime,convert(varchar(8),getdate(), 120)+’01’,120) 2.顯示本月最后一天 selectdateadd(day,-1,convert(datetime,convert (varchar(8),dateadd(month,1,getdate()),120
盤區鎖是一種特殊類型的鎖,只能用在一些特殊的情況下。簇級鎖就是指事務占用一個盤區,這個盤區不能同時被其他事務占用。例如在創建數據庫和創建表時,系統分配物理空間時使用這種類型的鎖。系統是按照盤區分配空間的。當系統分配空間時,使用盤區鎖,防止其他事務同時使用同一個盤區。當系統完成分配空間之后,就不再使用這種類型的盤區鎖。特別是,當涉及到對數據操作的事務時,不使用盤區鎖。
數據庫級鎖是指鎖定整個數據庫,防止任何用戶或者事務對鎖定的數據庫進行訪問。數據庫級鎖是一種非常特殊的鎖,它只是用于數據庫的恢復操作過程中。這種等級的鎖是一種最高等級的鎖,因為它控制整個數據庫的操作。只要對數據庫進行恢復操作,那么就需要設置數據庫為單用戶模式,這樣系統就能防止其他用戶對該數據庫進行各種操作。
行級鎖是一種最優鎖,因為行級鎖不可能出現數據既被占用又沒有使用的浪費現象。但是,如果用戶事務中頻繁對某個表中的多條記錄操作,將導致對該表的許多記錄行都加上了行級鎖,數據庫系統中鎖的數目會急劇增加,這樣就加重了系統負荷,影響系統性能。因此,在SQL Server中,還支持鎖升級(lock escalation)。所謂鎖升級是指調整鎖的粒度,將多個低粒度的鎖替換成少數的更高粒度的鎖,以此來降低系統負荷。在SQL Server中當一個事務中的鎖較多,達到鎖升級門限時,系統自動將行級鎖和頁面鎖升級為表級鎖。特別值得注意的是,在SQL Server中,鎖的升級門限以及鎖升級是由系統自動來確定的,不需要用戶設置。
解析:Microsoft SQL Server中的鎖模式
在SQL Server數據庫中加鎖時,除了可以對不同的資源加鎖,還可以使用不同程度的加鎖方式,即鎖有多種模式,SQL Server中鎖模式包括:
分享:詳解SQL嵌套子查詢一些初級 程序 員常常對SQL語法中的子查詢,由其對嵌套子查詢(子查詢中包含一個子查詢)的使用比較生疏,本文就此做一個基本講解,相信新手會有一定收獲。 使用子查詢的原則 1.一個子查詢必須放在圓括號中。 2.將子查詢放在比較條件的右邊以增加可讀性。 子
相關Mssql數據庫教程:
- sql 語句練習與答案
- 深入C++ string.find()函數的用法總結
- SQL Server中刪除重復數據的幾個方法
- sql刪除重復數據的詳細方法
- SQL SERVER 2000安裝教程圖文詳解
- 使用sql server management studio 2008 無法查看數據庫,提示 無法為該請求檢索數據 錯誤916解決方法
- SQLServer日志清空語句(sql2000,sql2005,sql2008)
- Sql Server 2008完全卸載方法(其他版本類似)
- sql server 2008 不允許保存更改,您所做的更改要求刪除并重新創建以下表
- SQL Server 2008 清空刪除日志文件(瞬間日志變幾M)
- Win7系統安裝MySQL5.5.21圖解教程
- 將DataTable作為存儲過程參數的用法實例詳解
- 相關鏈接:
- 教程說明:
Mssql數據庫教程-如何掌握SQL Server的鎖機制和鎖模式(4)。