2012-02-09 4 views
0

私にとっては、同じ列に対して複数のインデックス名を作成する必要はありません。私がインデックスについて勉強しているとき、私は次のテストを試みました。同じものを使うのは何ですか?機能はありますか?私が試してみました何複数のインデックス名を持つ同じ列。可能です。それは何ですか?

は次のとおりです。

 
create index id on TestIndex(EmployeeMumber) 
create index id1 on TestIndex(EmployeeMumber) 
create index id2 on TestIndex(EmployeeMumber) 

結果は次のとおりです。コマンド(s)は正常に完了しました。

おかげ

+0

同じ列の異なるインデックス名は必要ありません。 1つだけ十分です。それは単にデータストレージを増やすだけで、DBエンジンはテーブル内のデータが更新されるとすべてのインデックスを更新する必要があります。これは、サーバーリソースの浪費を意味します。 –

答えて

0

SQL Serverが(there has been an unsuccessful push to change thisが)重複インデックスを作成するのを防ぐことはできません。 DROP_EXISTINGやオンラインでの再構築などのオプションが存在しないときに、古いものを削除する前に新しいインデックスを作成するという、以前のバージョンのユースケースが多分あったでしょう。 INCLUDE列、フィルターされた索引など、エンジンの新しい機能が進化するにつれて、実際には2つの索引が重複しているかどうかを判別することはより複雑です。

関連する問題