第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

SELECT語句中NOLOCK提示的作用

SELECT語句中NOLOCK提示的作用

翻翻過去那場雪 2019-10-15 14:08:57
我想真正的問題是:如果我不在乎臟讀,將帶(NOLOCK)提示添加到SELECT語句中會影響以下內(nèi)容的性能:當前的SELECT語句給定表的其他交易例:Select * from aTable with (NOLOCK)
查看完整描述

3 回答

?
POPMUISE

TA貢獻1765條經(jīng)驗 獲得超5個贊

1),帶有的選擇NOLOCK將比正常選擇更快地完成。

2),帶有的選擇NOLOCK將允許對受影響的表進行其他查詢比正常選擇更快地完成。

為什么會這樣呢?

NOLOCK通常(取決于您的數(shù)據(jù)庫引擎)意味著將您的數(shù)據(jù)提供給我,我不在乎數(shù)據(jù)處于什么狀態(tài),并且在您讀取數(shù)據(jù)時也不會費心保持數(shù)據(jù)狀態(tài)。它的速度更快,資源占用更少,非常危險。

應該警告您不要對系統(tǒng)進行任何重要更新或執(zhí)行任何對系統(tǒng)至關重要的事情,或者在使用NOLOCK讀取數(shù)據(jù)時要求絕對正確的地方。絕對有可能該數(shù)據(jù)包含在查詢運行期間已刪除的行或在尚未完成的其他會話中已刪除的行。此數(shù)據(jù)可能包含已部分更新的行。此數(shù)據(jù)可能包含違反外鍵約束的記錄。此數(shù)據(jù)可能會排除已添加到表中但尚未提交的行。

您真的沒有辦法知道數(shù)據(jù)的狀態(tài)。

如果您要獲取諸如行計數(shù)或其他匯總數(shù)據(jù)之類的可接受誤差范圍的內(nèi)容,那么這NOLOCK是提高這些查詢的性能并避免對數(shù)據(jù)庫性能產(chǎn)生負面影響的一種好方法。

始終NOLOCK謹慎使用提示,并處理可疑返回的任何數(shù)據(jù)。


查看完整回答
反對 回復 2019-10-15
?
叮當貓咪

TA貢獻1776條經(jīng)驗 獲得超12個贊

由于缺少共享鎖,NOLOCK使大多數(shù)SELECT語句更快。同樣,缺少鎖的發(fā)行意味著您的SELECT不會妨礙編寫者。

NOLOCK在功能上等效于READ UNCOMMITTED的隔離級別。主要區(qū)別在于,可以選擇在某些表上使用NOLOCK,但不能在其他表上使用。如果計劃在復雜查詢中的所有表上使用NOLOCK,則使用SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED會更容易,因為您不必將提示應用于每個表。

這是有關您可以使用的所有隔離級別的信息,以及表提示。


查看完整回答
反對 回復 2019-10-15
?
慕妹3146593

TA貢獻1820條經(jīng)驗 獲得超9個贊

  • 如果一次查詢多次運行,答案是肯定的,因為每個事務都不需要等待其他事務完成。但是,如果查詢單獨運行一次,則答案為“否”。

  • 是的。謹慎使用WITH(NOLOCK)很有可能會整體上加快數(shù)據(jù)庫的速度。這意味著其他事務不必等待此SELECT語句完成,但是另一方面,其他事務將減慢速度,因為它們現(xiàn)在與新事務共享其處理時間。

注意WITH (NOLOCK)在具有聚集索引的表上的SELECT語句中使用。

WITH(NOLOCK)通常被用作加快數(shù)據(jù)庫讀取事務速度的一種神奇方法。

結果集可以包含尚未提交的行,這些行通常在以后回滾。

如果將WITH(NOLOCK)應用于具有非聚集索引的表,則在將行數(shù)據(jù)流式傳輸?shù)浇Y果表時,其他事務可以更改行索引。這意味著結果集可能缺少行或多次顯示同一行。

READ COMMITTED(讀取已提交)增加了一個額外的問題,即數(shù)據(jù)在單個列中損壞,多個用戶同時更改了同一單元格。


查看完整回答
反對 回復 2019-10-15
  • 3 回答
  • 0 關注
  • 639 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號