Можно ли использовать идентификатор в качестве автоматического приращения также в таблице соединений (users_blog) или у меня возникнут проблемы со скоростью запроса?
Имеет ли поле автоинкремент или нетне влияет на то, как быстро вы можете получить данные, которые уже находятся в базе данных.
также я хотел бы знать, какие поля добавить как PRIMARY, а какие как INDEX в таблице users_blog?
Цель PRIMARY KEY (и других ограничений) - обеспечить правильность данных.Индексы "просто" для производительности.
То, какие поля будут в PRIMARY KEY, зависит от того, что вы хотите выразить с помощью вашей модели данных:
- Если строка
users_blog
идентифицируется только с помощью id
(т. е. между этими двумя таблицами существует «неидентифицирующая» связь), поместите только id
в ПЕРВИЧНЫЙ КЛЮЧ. - Если он идентифицирован комбинацией
id_user
и id
(он же «идентифицирующее» отношение), тогда у вас будут эти два поля вместе в вашем ПК.
Что касается индексов, это зависит от того, как вы собираетесь получить доступ к вашим данным,Например, если вы делаете много JOIN, вы можете рассмотреть индекс для id_user
.
Хороший учебник по производительности индекса можно найти по адресу:
http://use -the-index-luke.com