在插入数据时,索引未在事务中更新?

时间:2012-03-03 05:47:49

标签: sql sql-server-2008 transactions

我有一个在READ COMMITTED隔离级别执行的事务。在事务中,我将10,000行插入名为“Docs”的表中,其中DocId为主键,3个索引在VendorId,CompanyId和ProgramId上。但是,在我提交数据之前,索引似乎没有得到更新。这是真的?有没有办法可以在调用提交之前强制在事务中更新索引?

1 个答案:

答案 0 :(得分:1)

不是这样(除非索引被禁用)。 未提交的索引更新仅在READ UNCOMMITTED隔离级别或nolock提示中可用。

为什么会出现问题?你真的需要看到未提交的数据吗?读取uncommited通常用于避免锁定开销而不读取新数据。