在我的一個數據庫表(我使用的是postgres)中有一列名爲:active
,它當前是一個布爾值,默認爲true
。我想將此列的類型從布爾型更改爲整型,以便我可以使用此項目的枚舉。我檢查了文檔和一些堆棧溢出的答案,但尚未找到一個確切的答案。我如何使用遷移進行此更改?如果這有所作爲,我正在使用Rails 5。謝謝!在列表中將列數據類型從布爾值更改爲整數
0
A
回答
2
你遷移文件應該是這樣的
def change
change_column :table_name, :active, :integer
end
而且你需要重寫所有先前的記錄,可以在相同的遷移文件中完成一個整數值。
0
您可以創建一個新的遷移:
rails g migration change_data_type_for_active
然後編輯遷移到使用change_column
:
class ChangeDataTypeForActive < ActiveRecord::Migration
def self.up
change_column :table_name, :active, :integer
end
def self.down
change_column :table_name, :active, :boolean
end
end
然後運行遷移:
rake db:migrate
之所以定義up
和down
方法是你可以返回喲u數據庫到previos狀態:
rake db:rollback
相關問題
- 1. 無法在postgres中將列更改爲整數或布爾值
- 2. PostgreSQL:從布爾值更改列類型
- 3. 從文本更改列數據類型爲整數PostgreSQL中
- 4. 從整數數據幀列類型更改爲因素
- 5. 將依賴項的列的數據類型從整數更改爲數字
- 6. 如何將活動記錄列類型從布爾值更改爲不帶db的整數:migrate?
- 7. 從bigint中將列的數據類型更改爲uniqueidentifier
- 8. Rails遷移:將列數據類型從日期更改爲整數
- 9. 如何將列表中的類從數組更改爲列表?
- 10. 不能將視圖列的數據類型從數值更改爲數字(4,1)
- 11. 更改列數據類型
- 12. 更改列值數據類型(日期)
- 13. 更改整個數據庫中列的數據類型 - MySQL
- 14. 在SSRS報告參數中更改布爾型數據類型的默認值
- 15. 更改表列的數據類型
- 16. 如何更改表列數據類型
- 17. PGError:ERROR:列「is_required」是布爾類型的,但表達爲整數類型的
- 18. 在SQL/ORACLE中將列的數據類型「varchar」更改爲「DATE」
- 19. 在sql server中將列類型從bigint更改爲數字(18,0)
- 20. 更改Postgres整數列以鍵入布爾值
- 21. 將mySQL列數據類型從文本更改爲時間戳
- 22. 將列數據類型從DECIMAL(9,0)更改爲DECIMAL(15,0)
- 23. 將[hasMany:]引用的數據類型更改爲列表?
- 24. 更改數據表列值
- 25. 將列表中的特定值更改爲整數
- 26. Postgres改變列整數布爾
- 27. 將文本列的數據類型更改爲數字
- 28. 將列主鍵和外鍵VARCHAR數據類型更改爲INT數據類型
- 29. 將列類型字符變爲(3)以布爾值而不丟失數據
- 30. 如何在SQL Server 2008中將所有varchar數據類型列更改爲Nvarchar數據類型列