Mam kolumnę z typem Varchar w mojej bazie danych PostgreSQL, która miała być liczbą całkowitą ... i teraz chcę je zmienić, niestety nie wydaje mi się pracuję z wykorzystaniem mojej migracji railsów.Jak przekonwertować kolumnę tabeli na inny typ danych
change_column :table1, :columnB, :integer
co wydaje się wyjście to SQL:
ALTER TABLE table1 ALTER COLUMN columnB TYPE integer
więc próbowałem to zrobić:
execute 'ALTER TABLE table1 ALTER COLUMN columnB TYPE integer USING CAST(columnB AS INTEGER)'
ale obsada nie działa w tym przypadku, ponieważ niektóre kolumny są nieważne ...
jakieś pomysły?
Błąd:
PGError: ERROR: invalid input syntax for integer: ""
: ALTER TABLE table1 ALTER COLUMN columnB TYPE integer USING CAST(columnB AS INTEGER)
Postgres v8.3
która wersja PostgreSQL używasz? to działa dla mnie – ealdent
btw: co dokładnie nie działa z migracją? –