我試圖添加(nolock)在報表查詢中,當運行時鎖定完整的數據庫使其他用戶無法使用數據庫。 我無法弄清楚如何在這種情況下使用: -- this is just an example:
SELECT FIELDS FROM (SELECT * FROM ATABLE) AS SUB
這給了語法錯誤: SELECT FIELDS FROM (SELECT * FROM ATABLE) WITH
我正在使用實體框架將SQL函數轉換爲C#,並且我正在轉換的函數在要加入的每個表(其中10個)上使用NOLOCK提示。 因此,我決定將整個交易的IsolationLevel設置爲ReadUncommitted。目前,我正在做內部連接。 from a in context.table1.ToList()
join b in context.table2.ToList on a.Id equals b
我對使用NOLOCK有疑問。 我明白NOLOCK提示並不總是最好的方法,但在某些情況下,它是非常有幫助的。我並非試圖製造一直使用它的壞習慣 我只是想了解它的確切行爲。有這種不現實的說法,即更新記錄的過程,其中id = 10 UPDATE table1 SET status = 2 WHERE id = 10需要30秒更新。同時我執行SELECT * FROM table1 WITH NOLOCK
我試圖把一個與更新查詢(NOLOCK): UPDATE pth_patchLookup with(nolock) SET ScanDateTime = Getdate() WHERE RegID = 312
,但我得到了以下信息: NoLock hint is supported only with Select statement and not with update, insert an
我知道with(nolock)和(nolock)是相同或幾乎相同。REF:with(nolock) or (nolock) - Is there a difference? 但是nolock怎麼樣?您可以使用,你可以寫別名當使用其中任何一個在select的唯一顯着的區別,我可以看到的是: select * from table1 as mytable with(nolock) 或 select *