2 回答

TA貢獻(xiàn)1841條經(jīng)驗(yàn) 獲得超3個(gè)贊
我想這可能是 mysql 驅(qū)動(dòng)程序特定的限制,int當(dāng)我們將它用作標(biāo)識符時(shí),對于 java 原始類型。我建議您將 的類型更改codeId為其盒裝對象類型Integer。
@Id
@Column(name = "code_id")
private Integer codeId;
因此,當(dāng)?shù)讓有菝呱上鄳?yīng)的更新查詢時(shí),它可以理解空標(biāo)識符與非空但值為0的標(biāo)識符之間的區(qū)別。

TA貢獻(xiàn)1839條經(jīng)驗(yàn) 獲得超15個(gè)贊
嘗試將 sequenceGenerator 和 GeneratedValue 添加到您的 id 列。
@Data
@Entity
@Table(name = "REF_PERIOD")
public class PayRefPeriod {
@SequenceGenerator(name = "generator", sequenceName = "REF_PERIOD_ID_SEQ")
@GeneratedValue(strategy = GenerationType.AUTO, generator = "generator")
@Id
@Column(name = "code_id")
private int codeId;
@Column(name = "code_name", length = 254, nullable = false)
private String codeName;
}
添加回答
舉報(bào)