簡體   English   中英

java.sql.SQLException:第 1 行的“MonthlyIncome”列數據被截斷錯誤

[英]java.sql.SQLException: Data truncated for column 'MonthlyIncome' at row 1 error

我正在嘗試使用我的 GUI 更新數據並將數據保存到我的數據庫中。 我的問題是,如果我沒有在數據庫中允許 null 的某些文本框中輸入任何數據,我會收到這種錯誤:java.sql.SQLException:第 1 行的“MonthlyIncome”列數據被截斷

通常,當您輸入的數據對於該列來說太長時,就會出現此問題。 在這種情況下,您更新“MonthlyIncome”字段的任何數據都太長了。

可能發生此錯誤的另一個原因是當您的列的類型是具有有限值列表的 ENUM 但您嘗試插入不屬於該列表的內容時。

例如,如果您的列類型是 ENUM ('XXX','YYY','ZZZ') 但您嘗試在此列中插入值 'AAA',您將得到相同的錯誤。

如果分別創建JPA實體和SQL表,

如果您關閉了 JPA 表自動創建,請檢查您的 application.properties 是否有spring.jpa.hibernate.ddl-auto=none

此錯誤的另一個原因可能是,在您的 JPA 實體中,特定字段數據類型和 SQL 表列數據類型可能不同。

如果您使用的是 Hibernate,那么另一個原因可能是您缺少@Enumerated注釋。 使用您想要的數據類型對其進行注釋,如下例所示:

@Column(name="monthly_income")
@Enumerated(EnumType.STRING)
private MonthlyIncome monthlyIncome

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM