Индексы не о структуре таблицы, а о шаблонах доступа.
Вам нужно посмотреть, как вы запрашиваете данные в таблице и соответственно создаете свои индексы.
Основное правило заключается в рассмотрении определения индексов для полей, которые обычно используются в предложении WHERE
.
См. это сообщение в блоге на эту тему.
Обновление
Вы можете определить только один кластеризованный индекс в таблице. Обычно это делается в поле идентификатора таблицы, как в вашем примере.
Другие индексы будут некластеризованными.
В отношении другого (некластеризованного) индекса - если вы намереваетесь иметь только запросы, содержащие оба поля в предложении WHERE
, а ORDER BY
будет иметь первичную сортировку по Name
(в отличие от первичная сортировка по ShortName
). Причина в том, что именно так будет храниться индекс - сначала на Name
, затем на ShortName
.
Если, однако, вы будете использовать ShortName
в качестве основной сортировки или без Name
в предложении WHERE
, вам лучше иметь два индекса, по одному для каждого.