我用rails創建了一些表格。現在我想修改其中一些結構。我知道這可以使用rails遷移來完成。但我想知道如果我使用mysql rdbms修改模式會導致rails應用程序出現異常嗎?可以更改從rails使用mysql創建的數據庫表模式嗎?
2
A
回答
0
通過遷移進行此類更改具有在您決定重新創建/重新遷移數據庫時不會丟失更改的優勢。
此外,它作爲文件。想象一下,如果你的同事偷偷改變了一些桌子(然後你們都忘記了)。
從技術上講,直接在數據庫中更新模式應該可行,但不要這樣做。
0
要添加到Sergio
的觀點,你錯過了一個簡單的事實 - Rails' migrations創建着名的db/schema.rb
文件 - 從中你的遷移拉他們所有的數據。
schema.rb
的重要性被忽略 - 它是您的應用程序中最重要的方面之一。
DB/schema.rb
架構提供了所有遷移你的數據庫更改/添加的版本。每次執行遷移時,Rails都會更改模式文件,以確保它具有存儲在文件中的數據庫的「藍圖」。
的模式,然後能夠重新使用這種方法爲rake db:schema:load
數據庫(建議僅用於新的安裝 - 刪除以前的數據)
因此,雖然沒有任何問題設置使用DB自己的分貝本地工具,我建議反對它。您需要保持您的遷移速度,以便Rails可以從其架構中構建適當的表。
相關問題
- 1. SQLAlchemy可以自動從數據庫模式創建關係嗎?
- 2. 使用MySQL Workbench從現有模式/模型創建數據庫
- 3. mysql可以創建分佈式數據庫嗎?
- 4. Can Rails模式表可以在數據庫之外嗎?
- 5. 可以使用django模型創建多個數據庫表?
- 6. 我可以更改DBD :: mysql使用的數據包大小嗎?
- 7. 如何從rails中的模型創建或更新數據庫模式?
- 8. 我可以只使用rails的遷移來維護數據庫模式嗎?
- 9. 如何更改數據庫 - 實體框架(mysql數據庫)使用的模式?
- 10. MySQL可以在表內創建表嗎?
- 11. 我的數據庫模式可以與Mongo一起使用嗎?
- 12. 我可以在Google應用引擎上動態更改數據庫模式嗎?
- 13. 可以使用mySQL數據創建畫布嗎?
- 14. 可以鈦的android模塊讀取使用Ti.Database創建的數據庫嗎?
- 15. 我可以使用PDO參數化語句創建MYSQL表嗎?
- 16. MySQL數據庫表創建
- 17. 我可以使用URL更改Firebase實時數據庫嗎?
- 18. 使用Faker在MySQL Rails數據庫中創建示例數據
- 19. Rails更新數據庫,更改模型
- 20. 如果超過日期,您可以使用mysql更改數據庫值嗎?
- 21. 從DataTable創建數據庫模式
- 22. 我可以更改特定數據庫或表上的MySQL ft_min_word_len嗎?
- 23. 我可以從PHP創建我自己的數據庫嗎?
- 24. 使用docker-compose創建一個MySQL模式/數據庫
- 25. 可以使用存儲過程創建數據庫嗎?
- 26. 可以使用MongoDB創建關係數據庫嗎?
- 27. 數據庫模式比較 - 創建表
- 28. 創建數據庫模式
- 29. 我可以使用rails 4中的一個數據庫查詢創建多個關聯的數據庫行嗎?
- 30. 數據庫模式可以更改的最佳方法?