我一次写入数百或可能几千行到一组表中,其中每一个都是重度在内部和通过索引视图索引。批量索引更新?
通常,插入行发生在插入的行将在索引中相邻。
我希望这些插入物很贵,但他们是真的很慢。我认为性能问题的一部分是索引正在更新与每个单独的插入。
有没有办法告诉SQL Server阻止更新索引,直到我完成了一批插入操作,因此索引树只需要更新一次?
由于需要在保存期间向用户显示进度条并记录任何单个问题,但它们都作为单独的语句执行,但都来自C#中的同一连接。如果需要,我可以将它们放入交易中,尽管我不想。
“几千行”不是很多。应该几乎是即时的......当然,我们不知道你有什么硬件...... –
我在表格末尾插入了几千行,但表格有几百万行。速度问题肯定是在更新索引。硬件是非常流行的,并且在此特定任务期间数据库执行得很好。 – richardtallent