gpt4 book ai didi

java - 当我使用 ddl-auto=create 时,JPA/hibernate 未生成其中一张表

转载 作者:行者123 更新时间:2023-12-02 09:02:15 25 4
gpt4 key购买 nike

我有spring.jpa.hibernate.ddl-auto=create设置,并且我的大部分表格正在生成。 一个不是!我知道这一定是愚蠢的事情,我希望它足够常见,以至于有人会认识到这个问题。

这是未创建表的实体(没有导入)。

@Entity
@Data
@NoArgsConstructor
public class ImageSize {
@Id
@SequenceGenerator(name = "imagesizeseq", sequenceName = "IMAGE_SIZE_SEQ", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "imagesizeseq")
private Integer imageSizeId;

private String Size;

@OneToMany(fetch = FetchType.LAZY, mappedBy = "imageSize")
private List<ImageData> imageDatas;

}

这是与丢失的表有关系的实体

@Entity
@Data
@NoArgsConstructor
public class ImageData {
@Id
@SequenceGenerator(name = "imagedataseq", sequenceName = "IMAGE_DATA_SEQ", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "imagedataseq")
private Integer imageDataId;

@Lob
private byte[] imageData; //TODO: make this java.sql.Blob rather than byte[]; see p 101 in hibernate bk

@ManyToOne
@JoinColumn(name = "IMAGE_SIZE_ID")
private ImageSize imageSize;

@ManyToOne
@JoinColumn(name = "IMAGE_ID")
private Image image;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "MIME_TYPE_ID")
private MimeType mimeType;

}

最佳答案

问题是保留字。在尝试创建 image_size 表(缺少的表)后,控制台错误只是显示“无效标识符”。我将 image_size 表中的一个字段从“size”更改为“imageSize”,这解决了问题。

关于java - 当我使用 ddl-auto=create 时,JPA/hibernate 未生成其中一张表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60078338/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com