创建索引有多糟糕

时间:2013-12-16 20:56:59

标签: performance sql-server-ce sql-server-ce-4

我有一个SQL Compact 4.0数据库,其中一个表有大约20列和大约1,000,000行。

我遇到的问题是性能,因为用户可能会使用这20个列来过滤结果,查询将花费大量时间来执行(可能大约一分钟)。

出于测试目的,我为这些列创建了索引,虽然性能非常好但我想知道这样做有什么好处吗?

感谢。

2 个答案:

答案 0 :(得分:0)

每个索引意味着更长的插入/删除时间,因为必须重新索引表。因此,如果您有更多的插入/删除而不是选择,那么最好不要制作它们。

答案 1 :(得分:0)

问题是插入将花费更多时间(或其他表修改)和索引文件大小。

如果你的应用程序主要用于查询庞大的数据库,那么你可以很好地使用这个catch,并且基本上可以提高性能而无需捕获。

如果经常发生插入或其他重建索引表修改,则必须平衡索引数量,以便最重要的任务的性能最佳,而不那么重要的任务也不会那么快。

如果没有捕获,你不能做的就是保持选择和插入速度超快。