2014-02-27 41 views
0

我有一個使用EJB3並連接到MySQL數據庫的現有EE應用程序。我基本上需要修改一些實體,然後手動修改數據庫的修改來實現修改。手動爲MySQL創建@OneToMany腳本

具體來說,我需要將以下添加到一個名爲「TICKET」實體:

@OneToMany(cascade = {CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REMOVE}) 
private List<Attachment> attachements = new ArrayList<>(); 

注:聯接是單向的。

我該如何將關係創建爲SQL語句?

回答

0

在SQL這種關係的合理映射是使用外鍵限制「父」實體ID表映射到Attachment實體值:

CREATE TABLE attachments (
... 
ticket_id INTEGER, 
... 
FOREIGN KEY (ticket_id) REFERENCES tickets(id) ON DELETE CASCADE ON UPDATE CASCADE 
) 

連接(無論是單向還是方向雙向)不會影響SQL數據結構。