亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

ORA-01722: 使用 Hibernate 時數字無效

ORA-01722: 使用 Hibernate 時數字無效

蝴蝶不菲 2022-05-12 15:58:42
我有一個實體 Job 如下。@Entity@Getter@Setter@NoArgsConstructor@Immutable@ToString@JsonIgnoreProperties({"hibernateLazyInitializer", "handler"})@Table(name = "JOB")public class Job extends BaseEntity implements IEntity, IDto {  @Id  @Column(name = "JOB_ID", unique = true, nullable = false)  private Long id;  @Column(name = "PRINT_JOB_ID", length = 30)  private String printJobId;  @OneToMany(fetch = FetchType.LAZY)  @JoinColumn(name = "PRINT_JOB_ID", nullable = false, insertable = false, updatable = false)  private Set<PrintFile> printFileInfos = new HashSet<PrintFile>();}我還有另一個實體 PrintFile。@Entity@Getter@Setter@NoArgsConstructor@Immutable@Table(name = "PRINT_FILE")public class PrintFile implements Serializable {  @Id  @Column(name = "FILE_ID", unique = true, nullable = false, length = 50)  private String fileId;  @Column(name = "PRINT_JOB_ID", nullable = false, length = 30)  private String printJobId;}這是我的桌子。JobJOB_ID                     NOT NULL NUMBER PRINT_JOB_ID                        VARCHAR2(30)  Print_FilePRINT_JOB_ID               NOT NULL VARCHAR2(30)  FILE_ID                    NOT NULL VARCHAR2(50) 嘗試使用 Sprint 引導休息 API 獲取作業數據時,java.sql.SQLSyntaxErrorException: ORA-01722: invalid number出現錯誤。所有的數據類型映射似乎都是正確的,還有什么可能出錯的?編輯:當我擺脫聯接時,作業實體可以毫無問題地獲取。即 Job 實體中 printFileInfos 的整個聲明。這讓我認為問題出在 join 或 PrintFile 實體中。
查看完整描述

1 回答

?
嗶嗶one

TA貢獻1854條經驗 獲得超8個贊

我建議您嘗試以下給定的代碼。添加 referencedColumnName 屬性后,它對我有用。


   @OneToMany(fetch = FetchType.LAZY)

   @JoinColumn(name = "PRINT_JOB_ID", referencedColumnName = "PRINT_JOB_ID", nullable = false, insertable = false, updatable = false)

   private Set<PrintFile> printFileInfos = new HashSet<PrintFile>();


查看完整回答
反對 回復 2022-05-12
  • 1 回答
  • 0 關注
  • 192 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號