我在代码里指定的生成策略是 GenerationType.AUTO
,但不确定实际是不是使用的 sequence,只是 jpa 在 mysql 里自动创建了 hibernate_sequence 表
我在很多地方看到都是 mysql 不支持 sequence 的方式,不过我的程序是正常运行了。不清楚是 mysql 已经支持了还是说 jpa 有优化。因为我的英语很差,在 google 只能粗略的搜一下,但并没有什么发现。( btw,我用"jpa hibernate sequence in mysql"这样子在 google 搜索可以得到我想要的结果吗?)
接下来提一下我的问题。我现在 mysql 数据库中有 6 张表。其中一张是 hibernate_sequence。在 hibernate_sequence 中有 5 行数据。记录当前生成的主键 id,但它并不是每张表分开的。这 5 行数据的内容是相同的。就是我在表 A 插入了 id 为 1 的数据,表 B 插入数据 id 就成为 2 了。
按照我的理解,既然它分为了 5 行数据,那应该是每个表拥有自己单独的记录,为什么会相同呢?难道 sequence 就是这样子生成主键的吗?如果是这样的话没有必要在 hibernate_sequence 表中记录 5 行数据啊。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.