是否可以自动增加非主键?
表“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
整个 PK。这将使桌子的大小增加三倍以上。
建议?想法?