2010-03-06 79 views
2
private String message = ""; 
public String getMessage() { 
    return message; 
} 

public void setMessage(String message) { 
    this.message = message; 
} 

我正在使用使用Java的EJB3和MySQL 5.1。 我想使用Entity Bean將文本段落插入MySQL數據庫。 但是,當我添加時,MySQL只能接受255個字符。它顯示我以下錯誤:使用EJB將'Text'字段數據類型插入MySQL 3

引起:com.mysql.jdbc.MysqlDataTruncation:數據截斷:數據太長在行列「消息」 1

目前,消息的字段類型是VARCHAR(255 ) 默認。無論如何要將實體Bean中的字段類型更改爲「文本」或將限制255增加到1000?

+0

VARCHAR的Mysql有255的最大長度你必須使用一個「文本」數據類型。 – codaddict 2010-03-06 02:31:03

回答

1

您可以javax.persistence.Lob註釋屬性:

private String message = ""; 

@Lob 
public String getMessage() { 
    return message; 
} 

public void setMessage(String message) { 
    this.message = message; 
} 

你將不得不更新架構太(ALTER TABLE ...)。如果您設置hibernate.hbm2ddl.auto=update,休眠會自動爲您執行此操作。