Сколько кластерных индексов может быть в одной таблице?
В SQL Server 2008, сколько кластерных индексов может быть в одной таблице?
Единственный; и 999 некластеризованных индексов http://msdn.microsoft.com/en-us/library/ms143432.aspx
Один. Как отмечено здесь :
«Кластерный индекс определяет физический порядок данных в таблице. Кластерный индекс аналогичен телефонному каталогу, который упорядочивает данные по имени. Поскольку кластерный индекс определяет порядок хранения данных в таблице, таблица может содержат только один кластерный индекс ».
Для SQL Server 2005: 1 кластерный индекс + 249 некластеризованный индекс = 250 индекс
Для SQL Server 2008: 1 кластерный индекс + 999 некластеризованный индекс = 1000 индекс
1.
Хотя для этого есть определенные причины, может показаться странным, что разрешен только один кластерный индекс. Тот факт, что кластерный индекс сортирует данные внутри страны, на самом деле не объясняет причину наличия только одного такого индекса, поскольку некластеризованные индексы сортируются точно так же, как кластерные. Некластеризованные индексы могут включать в себя все данные таблицы таким же образом, что и кластерный. Поэтому, по крайней мере, в некоторых случаях было бы вполне разумно создать несколько «кластеризованных» индексов или просто полностью отказаться от различия. Но SQL Server не позволит вам создавать более одного.