Можно ли изменить поле, которое является строкой целого, без очистки уже введенных данных?Rails Миграция для преобразования строки в целое число?
Текущая структура БД для рассматриваемой таблицы является:
create_table :people do |t|
t.string :company_id
Возможно ли это с помощью миграции?
Я думаю, что, возможно, в процессе миграции удалите старое поле, создайте новый, который является целым числом, но я беспокоюсь, что это очистит все введенные данные.
Спасибо,
Дэнни
спасибо за улучшение форматирования, jigfox – Zaki
Великими, Благодарю. Я предполагаю, что мне не нужно указывать текущий тип в первом примере? – dannymcc
Первый подход породил ошибки для меня, когда я нажал код на Heroku. PG :: DatatypeMismatch: ОШИБКА: столбец «company_id» не может быть автоматически применен для ввода целого числа СОВЕТ. Укажите выражение USING для выполнения преобразования. : ALTER TABLE "сотрудники" ALTER COLUMN "company_id" TYPE integer rake aborted! StandardError: произошла ошибка, эта и все последующие миграции отменены: PG :: DatatypeMismatch: ОШИБКА: столбец «company_id» не может быть автоматически добавлен для ввода целого числа СОВЕТ. Укажите выражение USING для выполнения преобразования. – Evolve