共用方式為


資料指標交易隔離等級

特定資料指標的交易鎖定屬性藉由結合以下各項來決定:資料指標並行設定的鎖定行為、資料指標 SELECT 中指定的鎖定提示,以及交易隔離層級選項。

Microsoft SQL Server 支援下列資料指標的交易隔離等級:

  • 讀取認可
    SQL Server 將資料列讀入資料指標時會取得共用鎖定,但在讀取資料列後會立刻釋放鎖定。由於共用鎖定的要求被獨佔鎖定封鎖,資料指標就無法讀取其他作業已更新但尚未認可的資料列。讀取認可是 SQL Server 和 ODBC 的預設隔離等級設定。

  • 讀取未認可
    SQL Server 將資料列讀入資料指標時不會要求鎖定,且不接受獨佔鎖定。資料指標可以填入已更新但尚未認可的值。使用者不會使用 SQL Server 中所有的鎖定交易控制機制。

  • 可重複讀取或可序列化
    SQL Server 在 READ COMMITTED 等級中將每個資料列讀入資料指標時會要求共用鎖定,但若資料指標於交易中開啟,則共用鎖定會保留至交易結束,而不會在讀取資料列後釋放。這和在 SELECT 陳述式上指定 HOLDLOCK 有相同的效果。

  • 快照
    SQL Server 將資料列讀入資料指標時不會要求鎖定,且不接受獨佔鎖定。資料指標會以首次啟動交易時的值來填入。雖然使用快照隔離,但仍會要求捲動鎖定。