MySQL InnoDB:自動遞增非主鍵
MySQL 的 InnoDB 儲存引擎允許主鍵的值自動遞增。但是,不直接支援自動遞增非主鍵。
具體問題:表格結構
考慮「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
可以自動遞增非主鍵嗎?
是的,可以自動遞增非主鍵。不過,需要在要自增的列上建立索引。
推薦方案
儘管非主鍵有自增的可能性,但推薦方案解決方案是將“comment_id”作為主鍵,並在“book_id”、“ timestamp」和「user_id」的組合上會建立唯一索引,以確保資料完整性。
其他注意事項
問題中提到的替代建議有缺點:
因此,最有效、最穩健的解決方案是遵循建議的方法,使用「comment_id」作為主鍵,並在「book_id」、「timestamp」和「user_id」上建立唯一索引。
以上是MySQL InnoDB如何實現非主鍵自增?的詳細內容。更多資訊請關注PHP中文網其他相關文章!