Возможно ли автоматическое увеличение непервичного ключа?
Таблица "book_comments"
book_id medium_int
timestamp medium_int
user_id medium_int
vote_up small_int
vote_down small_int
comment text
comment_id medium_int
Primary key -> (book_id, timestamp, user_id)
В этой таблице не будет других индексов. Тем не менее, я хотел бы сделать автоинкремент столбца comment_id
, чтобы я мог легко создать другую таблицу:
Таблица "book_comments_votes"
comment_id (medium_int)
user_id (medium_int)
Primary key -> (comment_id, user_id)
Пользователи смогут голосовать только один раз за комментарий к книге. В этой таблице применяется это правило с помощью первичного ключа.
Вопрос:
Можно ли автоинкремент не первичного ключа - как и в, автоматически увеличивать столбец comment_id
в таблице "book_comments"?
Альтернативы, Обсуждение:
Я хотел бы сделать это для простоты, как описано выше. Альтернативы не являются многообещающими.
- Сделать commnet_id PK и обеспечить целостность с помощью уникального индекса на
book_id, timestamp, user_id
. В этом случае я бы создал дополнительный индекс. - Сохраните PK и замените comment_id в
book_comments_votes
на весь ПК. Это более чем утроило бы размер таблицы.
Предложения? Мысли?