Is it possible to auto-increment a non-primary key?
Table "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)
There will be no other indexes on this table. However, I would like to make the comment_id
column autoincrement so that I can easily create another table:
Table "book_comments_votes"
comment_id (medium_int)
user_id (medium_int)
Primary key -> (comment_id, user_id)
Users would be able to vote only once per book comment. This table enforces this rule by the primary key.
Question:
Is it possible to auto-increment a non-primary key - as in, auto-increment the comment_id
column in table "book_comments"?
Alternatives, Discussion.
I would like to do this for simplicity as explained above. The alternatives are not promising.
- Make the commnet_id PK and enforce integrity through a unique index on
book_id, timestamp, user_id
. In this case, I would create an additional index.
- Keep the PK and replace the comment_id in the
book_comments_votes
with the entire PK. This would more than triple the size of the table.
Suggestions? Thoughts?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…