我想知道如果添加到模型中,如何强制Sequelize自动将新列添加到数据库中。目前,我需要登录MySQL服务器并手动添加列。我知道有一种方法可以自动删除和重建表,但是我想保留数据库中的数据。
答案 0 :(得分:0)
正如您所说,自动方式(使用sync({force:true}))会在重建表之前删除所有数据。 在不丢失数据的情况下修改数据库方案的方法是使用迁移,如以下文档中所述:http://docs.sequelizejs.com/en/latest/docs/migrations/ 基本上,您可以通过 createTable , addColumn , changeColumn 等方法以编程方式描述要对模型进行的更新,... 可以使用Sequelize CLI执行迁移脚本。