我在我的Postgres數據庫中有一個Varchar類型的列,我的意思是整數...現在我想改變它們,不幸的是這似乎不是使用我的rails遷移工作。如何將表列轉換爲另一種數據類型
change_column :table1, :columnB, :integer
這似乎輸出這個SQL:
ALTER TABLE table1 ALTER COLUMN columnB TYPE integer
所以我試着這樣做:
execute 'ALTER TABLE table1 ALTER COLUMN columnB TYPE integer USING CAST(columnB AS INTEGER)'
但由於一些列的爲空轉換並不在這種情況下工作...
有什麼想法嗎?
錯誤:
PGError: ERROR: invalid input syntax for integer: ""
: ALTER TABLE table1 ALTER COLUMN columnB TYPE integer USING CAST(columnB AS INTEGER)
的Postgres V8.3
其Postgres的版本?這對我很有用 – ealdent 2010-05-21 11:59:13
btw:什麼不適用於遷移? – 2010-05-21 22:13:20