i cannot seem find proper way change column string type enum while persisting data in column.
i've attempted create new column enum type , copy data between columns:
// migrations/20160606170538-change-column.js 'use strict'; module.exports = { up: function (queryinterface, sequelize) { return queryinterface.addcolumn('time', 'newcolumn', { allownull: true, type: sequelize.enum('1-day', '7-day', '1-month', '3-month', '6-month', '1-year') }).then(function () { return queryinterface.sequelize.query("update time set newcolum = oldcolumn"); }); }, down: function (queryinterface, sequelize) { } };
but return following error on migration:
error: column "newcolumn" of type enum_time_newcolumn expression of type character varying]
postgres doesn't know string data in oldcolumn
can fit enum values - try casting
return queryinterface.sequelize.query("update time set newcolum = oldcolumn::enum_time_newcolumn");