2012-11-01 76 views
1

在我們更改變量類型或在模型中從@OneToMany更改爲@ManyToMany時播放1.0會自動處理更改,但使用播放2.0演進腳本刪除數據庫。有什麼方法可以讓Play 2.0在不丟棄數據庫的情況下應用更改?Play Framework 2.0中的數據庫演變

回答

2

是的,有一種方法。你需要禁用1.sql文件的自動重造,並開始寫含ALTERS自己的變陣,而不是CREATES - 與2.sql編號他們,3.sql

在實踐中,這意味着,如果你與單個數據庫的工作,你也可以...使用您最喜歡的數據庫GUI來管理數據庫的表和列。只有當您不能使用GUI(主機不允許外部連接並且沒有任何GUI)時,或者您打算在單獨的數據庫上運行該應用程序的許多實例時,這些演變纔有用。否則手動編寫語句可能比使用GUI更復雜。提示:有時,如果我不確定是否將所有必需的關係和約束添加到我的手動進化中,我將它們刪除(在git受控文件夾下!),並啓用Ebean插件啓用並保存提議的應用程序1.sql但我沒有應用這些更改。後來使用git我正在恢復我的演變,並與保存的自動生成的文件和convert CREATE語句比較ALTER。沒有使用三維零件軟件管理更改沒有更好的選擇。