Java 在从sql表中检查最大id后,如何将JPA中的自动递增id更改为起始id?

Java 在从sql表中检查最大id后,如何将JPA中的自动递增id更改为起始id?,java,sql,hibernate,jpa,Java,Sql,Hibernate,Jpa,我有一个要求,在检查同一个表中已经插入的数据的max ID之后,我必须启动ID。假设现有数据库的id一直到6。我从JPA添加数据。我希望它的ID是7,然后再自动递增。我该怎么做呢?有没有什么方法可以从代码行而不是编写sql脚本 我把 @身份证 @GeneratedValue(策略=GenerationType.AUTO) 私人长id; 在我的Person实体类中。运行应用程序后,我看到hibernate创建序列-创建序列hibernate\u序列以1乘以1的增量开始。 我已经尝试将序列更改为以m

我有一个要求,在检查同一个表中已经插入的数据的max ID之后,我必须启动ID。假设现有数据库的id一直到6。我从JPA添加数据。我希望它的ID是7,然后再自动递增。我该怎么做呢?有没有什么方法可以从代码行而不是编写sql脚本

我把 @身份证 @GeneratedValue(策略=GenerationType.AUTO) 私人长id; 在我的Person实体类中。运行应用程序后,我看到hibernate创建序列-创建序列hibernate\u序列以1乘以1的增量开始。 我已经尝试将序列更改为以max(id)+1点开始。但它显示了SQL中的语法错误

我还尝试了altertablepersonautoincrement=max(id)+1

他们都不工作。请帮忙


预期结果是-next added id=6,但实际上我遇到了主键异常。

为什么不将数据库中的id列定义为自动增量,让SQL server担心增量?谢谢Dave,但JPA正在创建数据库表。我只提到了@entity类。为什么不将数据库中的ID列定义为自动增量,让SQL server担心增量?谢谢Dave,但JPA正在创建数据库表。我只提到@entity类。