在MySQL中隐藏了AUTO_INCREMENT?

una*_*ana 6 mysql ruby-on-rails auto-increment

我在rails应用程序中使用MySQL.我有一个用户表(标准的东西,如id,名称等)和书籍表(再次与id,user_id和标题等).

我想有一个列(让我们称之为user_book_id),它应该像id一样自动递增,但是用user_id限定.就像id一样,即使在books表中删除了一条记录,也不应该重用user_book_id.一个例子:

User

id | Name
------------
1  | Jerry
2  | Newman

Book

id | user_id | user_book_id | Title
-----------------------------------
1  | 1       | 1            | Jerry's First Book
2  | 1       | 2            | Jerry's Second Book
3  | 2       | 1            | Newman's First Book
4  | 1       | 3            | Jerry's Third Book
Run Code Online (Sandbox Code Playgroud)

有没有办法在MySQL中这样做?我搜索但找不到任何东西.

谢谢,Prateek

Dan*_*man 1

不,不存在这样的事情。要么允许 auto_increment 在整个表中是唯一的,要么您必须自己实现它。