Sql-Server

SQL Server 2008 中行鎖和頁鎖的 sp_indexoption 的替代方案

  • January 10, 2012

在 SQL Server 2008 中設置行鎖和頁面鎖是否有更好的替代方法?

這裡的情況是在表上設置行鎖和頁鎖為false。鎖定在批量執行的表上的一系列插入、更新和刪除操作期間生效。

如果我理解正確,更好的方法是使用TABLOCK提示在需要它的查詢中強製表級鎖定(例如:從堆中刪除

UPDATE SomeTable WITH (TABLOCK)
SET ...


INSERT SomeTable WITH (TABLOCK)
...

就個人而言,我不會在 CREATE INDEX 語句中全域設置它……

此外,sp_indexoptions狀態的 MSDN 頁面

此功能將在 Microsoft SQL Server 的下一版本中刪除。避免在新的開發工作中使用此功能,併計劃修改目前使用此功能的應用程序。而是使用 ALTER INDEX (Transact-SQL)。

引用自:https://dba.stackexchange.com/questions/10441