2017-10-13 131 views
1

我想要的功能列表關聯H2嵌入列表(其中嵌入式)我Employee實體和H2內似乎不滿意這樣說,它預期「標識符」休眠預期「標識符」

引起由:org.h2.jdbc.JdbcSQLException:語法錯誤在SQL語句「 CREATE TABLE EMPLOYEE_FUNCTIONS( EMPLOYEE_EMPLOYEEID VARCHAR(255)NOT NULL, ACTIVE布爾NOT NULL, DEPARTMENTNUMBER INTEGER NOT NULL, DESCRIPTION VARCHAR(255), ORDER [*] INTEGER NOT NULL )「;預期的「標識符」;

事情是我已經做了與其他項目,我不明白爲什麼它不工作。

Employee.java

@Entity 
public class Employee extends AbstractScheduleEntity<EmployeeSchedule> { 
    public static final String ACOMBA_UNIQUE_FIELD = "acombaUnique"; 

    @Id 
    @GenericGenerator(name = "sequence_id", strategy = 
    "ca.tecsar.core.sql.ServerSequenceGenerator") 
    @GeneratedValue(generator = "sequence_id") 
    @Column(name = "EmployeeID", unique = true, nullable = false) 
    private String employeeID; 
    @ElementCollection 
    private List<Function> functions; 

    //getter and setter 
} 

Function.java

@Embeddable 
public class Function implements Serializable { 
    private int order; 
    private boolean active; 
    private String description; 
    private int departmentNumber; 

    //getter and setter 
} 

我刪除了職工的幾個特性,這是沒有必要的。 什麼可能會導致此錯誤?是否因爲我的員工中有一個字符串作爲標識符?如果是的話,我該如何告訴Hibernate將Employee_EmployeeID添加爲標識符? 謝謝

回答

3

原來和測試我是啞巴,並命名爲列‘訂單’不知道爲什麼H2卻高興不起來:upside_down:

改變了變量名稱到別的東西,它的工作

0

試着把;之前的「?

+0

查詢不是由我生成的,而是由Hibernate生成的 – baskwo