У меня есть вопрос, не могли бы вы мне помочь? Я создал базу данных для web-cms в таблице User_, которая включает в себя: UserID, Username, Password, FirstName, LastName, ... _, что является лучшим выбором для создания индекса на нем, имени пользователя или FirstName и Фамилия? Или они оба? По умолчанию UserID является кластеризованным индексом таблицы пользователей, поэтому следующий индекс должен быть некластеризованным. Но я не уверен, что UserID будет кластеризованным индексом. Поскольку это веб-сайт, и многие пользователи могут ежедневно регистрировать или удалять свои учетные записи, является ли это хорошим выбором для создания кластерного индекса на UserID? Я использую сервер sql 2008индекс проектирования для базы данных web-cms
ответ
Вы должны определить кластерные индексы в полях, которые часто запрашиваются последовательно или содержат большое количество различных значений или используются в запросах для таблиц joion. Таким образом, это обычно означает, что первичный ключ является хорошим кандидатом.
Некластеризованные индексы хороши для поля, которые используются в предложении where.
Определение того, какие поля вы создаете индексы, является тем, что очень специфично для вашего приложения. Если у вас есть очень важные запросы, которые используют поля имени и фамилии, я бы сказал «да», иначе это может не стоить усилий.
С точки зрения лиц, удаляющих свои учетные записи, я уверен, что вы не намерены удалять строку из таблицы. Обычно вы просто отмечаете их как неактивные, потому что то, что происходит со всеми другими связанными таблицами, которые могут быть затронуты этим пользователем?
- 1. Логика для проектирования базы данных
- 2. Задача проектирования базы данных
- 3. Вопрос проектирования базы данных
- 4. Проблема проектирования базы данных
- 5. Ошибка проектирования базы данных
- 6. Упрощение проектирования базы данных
- 7. проблема проектирования базы данных
- 8. Вопрос проектирования базы данных
- 9. Проблема проектирования базы данных
- 10. Вопрос проектирования базы данных
- 11. Стандарты проектирования базы данных
- 12. Вопрос проектирования базы данных
- 13. Лучший способ для проектирования базы данных
- 14. проектирования базы данных для словаря слов
- 15. Принципы проектирования для проектирования архитектуры базы данных финансовой системы транзакций?
- 16. Проектирования навигационной базы данных меню для СХ
- 17. Схема базы данных проектирования для биллинговой системы
- 18. Шаблон проектирования базы данных для наследования/переопределения
- 19. Пример проектирования базы данных для финансового учета
- 20. Хорошие ресурсы для проектирования реляционной базы данных
- 21. Необходимое экспертное заключение для проектирования базы данных
- 22. Проектирования базы данных для дополнительных параметров
- 23. Нужен совет для проектирования базы данных
- 24. Правильная практика проектирования базы данных
- 25. проектирования базы данных: счета мультивалютного
- 26. Сценарий проектирования базы данных SQL
- 27. Правильный способ проектирования базы данных
- 28. Структура проектирования базы данных Mysql
- 29. Простой вопрос проектирования базы данных
- 30. Задача проектирования таблиц базы данных
Не уверен, что я полностью понимаю ваш вопрос, но я бы с легкостью рассмотрел некластеризованный указатель на поля имени пользователя и пароля, поскольку эти два поля будут запрашиваться при входе пользователя в систему. Создать некластеризованный указатель [IndexName ] ON [Имя_таблицы] ([Имя пользователя], [Пароль]) Кстати, вы должны изменить имя своего столбца «Пароль», поскольку пароль является зарезервированным словом в SQL. Кроме того, любые запросы, содержащие этот столбец, не будут отображаться в Profiler, поскольку вы используете слово «пароль». – Sage
Кроме того, если вы специально запрашиваете столбец (EG: «Where [ColumnName] =« Boo »), я бы тоже не стал беспокоиться о добавлении индекса в этот столбец. – Sage