Я в Visual Studio, ищу создание составного индекса по 2 столбцам для нескольких таблиц. Есть 2 столбца: UserID находится во всех таблицах и действует как внешний ключ; затем каждая таблица имеет свой собственный ключ для ссылки на части объекта, такие как телефон, адрес ... Вот так:
TablePhones:
PhoneID | UserID | PhonePrefix | PhoneNumber | PhoneExtention
TableAddresses:
AddressID | UserID | AddressStreet1 | AddressStreet2 | AddressCity...
Обратите внимание, что пользователи могут иметь более 1 адреса и более 1 номера телефона.
Я использую linq to sql и запросы where для получения объектов выглядят так:
read queries:
where x.UserID == TheUserID
update/delete queries:
where x.UserID == TheUserID && x.PhoneID = ThePhoneID
В данный момент первичные ключи находятся на PhoneID и AddressID, и я собираюсь создать составные индексы для PhoneID / UserID и AddressID / UserID. Является ли порядок столбцов в базе данных точным или нет, или я должен переместить UserID на первую позицию для всех таблиц.
Спасибо за предложения.