【发布时间】:2017-12-11 06:56:27
【问题描述】:
我正在编写一个 Spring Boot 网络应用程序并使用 Postgres 数据库来保存我的数据。我在 Postgres 中使用create table user (id bigserial primary key not null, name text not null; 创建了一个表,并通过查看架构来识别它的sequence_name(在本例中为user_id_seq)。然后,在 Spring Boot 的 User 实体类中,我添加了以下内容:
@Entity
@Table(name = "user")
public class User implements Serializable {
@Id
@SequenceGenerator(name = "user_local_seq", sequenceName = "user_id_seq", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "user_local_seq")
private Long id;
...
确保sequenceName 与我之前看到的相符。现在,当我启动我的 Spring Boot 应用程序时,我能够成功启动它,但在跟踪中出现以下“错误”:
main] org.hibernate.tool.hbm2ddl.SchemaExport : ERROR: sequence "user_id_seq" does not exist
我杀死了应用程序并再次启动它,这一次,我得到了:
main] org.hibernate.tool.hbm2ddl.SchemaExport : HHH000389: Unsuccessful: drop sequence user_id_seq
main] org.hibernate.tool.hbm2ddl.SchemaExport : ERROR: sequence "user_id_seq" does not exist
这是什么意思?我错过了什么吗?任何帮助/见解表示赞赏。
【问题讨论】:
标签: postgresql hibernate spring-data database-sequence