好的,所以問題可能出在我的方法liquibase上,我已經在數據庫端實現了一些更改,並且我想創建更改集,所以我只需將一個新的sql文件添加到我的變更集中即可。當我嘗試運行luquibase update命令時,出現錯誤,告訴我數據庫中存在一些列。Liquibase:更新腳本(當數據庫中已經實現了一些更改時)
對我來說,正常的是,在創建changeset腳本之前,我嘗試在數據庫中添加列(即使用PhpMyAdmin)。然後我想與其他開發人員分享這些變化,所以我生成了sql(來自我的更改),將其添加到sql文件中,然後使用變更集啓動此文件。 有人可以告訴我我做錯了什麼嗎?
這個問題涉及到當我向mysql表中添加一些新列的情況,然後我創建了SQL文件白色alter_table腳本,然後運行liquibase update命令。
我知道問題來自我的sql alter的重複。所以最好的解決方案是有兩個數據庫?一個用於測試新的SQL,另一個用於部署? – user1119698 2013-03-13 14:14:54
否。如果您想進行更改,請創建一個新的更改集並在本地應用。切勿手動更改數據庫。 – 2013-03-13 15:17:01
本地=在我的情況下測試。我希望Liquibase能夠識別我在數據庫中的變化,並且可以將它們與變更集合在一起。不幸的是,當然,我只能使用變更集,但有時對我來說更好(特別是與相關的表)在PhpMyAdmin中創建sql。 – user1119698 2013-03-13 20:05:54