2012-02-24 22 views
0

我有一個域名類名的DataList如何解決冬眠創建表,而其說不成功的創建表

@Entity 
@Table(name = "list_data") 
public class ListData { 
@Id 
@GeneratedValue(strategy = GenerationType.IDENTITY) 
@Column(name = "id") 
private int id; 
@Column(name = "sys_id") 
private String sysId; 
@Column(name = "name") 
private String name; 
@Column(name = "detail") 
private String detail; 
@Column(name = "values") 
private String values; 

    //getters and setters 
    } 

我有一些其他領域類..使用Hibernate 3.6一切都好 林。

但以某種方式我創建此表時不成功。

2012-02-25 03:31:52166 ERROR SchemaExport工具:274不成功:創建表list_data(ID>整數不爲空的auto_increment,細節VARCHAR(255),名稱爲varchar(255),sys_id VARCHAR(255) ,> values varchar(255),primary key(id)) 2012-02-25 03:31:52,167錯誤SchemaExport:275您的SQL語法錯誤;檢查>「主鍵(id))值> VARCHAR(255)」的手冊,相當於你的MySQL服務器版本使用附近的正確語法在1號線

我知道我的Hibernate的配置是好的,我有一些其他的領域類,他們工作很好..

你能幫助這個,這是怎麼回事? 在此先感謝。

回答

3

我認爲你不能使用values作爲列名,因爲它是一個MySQL關鍵字(INSERT INTO ... VALUES())。

+0

這也是我的猜測。一般來說,當我使用hibernate時,我用f_標記列,用t_標記表以避免保留名稱問題。 – MJB 2012-02-24 22:20:07

+0

謝謝@MJB,我稍後發現它.. :) :) – rokonoid 2012-02-24 22:55:34