如果允许在表上创建249个非聚簇索引,是否意味着在每个列上都有一个非聚集的安全?那会有什么影响?或者我们必须只选择一些列来创建非聚集索引。
是这个:
create nonclustered index ix_test(col1, col2, col3)
与此不同:?
create nonclustered index ix_test(col1)
create nonclustered index ix_test2(col2)
create nonclustered index ix_test3(col3)
答案 0 :(得分:0)
索引适合读取而不适合写入。
当您只阅读数据时索引可以帮助您更快地找到数据并快速阅读。
另一方面
当你编写数据(UPDATE / DELETE / INSERT)时,sql server必须在存储实际数据的SQL Server Pages上写入两次数据,对Indexes执行一次。这会导致写入速度变慢。
你必须找到那些你的读取没有足够帮助索引的中间地带,你的写入不会受到太多索引的影响。
以上陈述适用于OLTP应用程序,其中数据正在频繁更改,但如果它是OLAP /数据仓库,则数据几乎不会发生变化,您可以添加与读取所需的索引一样多的应用程序以更好地执行。希望这可以帮助。