应用迁移后,Sequelize不更新元表

时间:2018-08-27 01:00:29

标签: sequelize.js database-migration sequelize-cli

我不知道我是否在这里缺少任何步骤,但是在进行迁移后,sequelize并没有更新SequelizeMeta表。

如果我运行db:migrate:status,我会发现所有迁移都是“向上”的,但最后一次迁移甚至没有出现在输出中。

我必须手动更新此表吗?

[ EDIT ]

我一直在更仔细地查看sequelize db:migrate命令的输出:

Executing (default): INSERT INTO "SequelizeMeta" ("name") VALUES ('20180827001615-updatePersonIdColumn.js') RETURNING *;

ERROR: null value in column "createdAt" violates not-null constraint

“ createAt”列似乎没有默认值。这正常吗?

1 个答案:

答案 0 :(得分:1)

从您的错误看来,SequelizeMeta的方案似乎不正确(列名为“ createdAt”)。

您的“ SequelizeMeta”表应该只有一列名为“ name”的列。如果您手动创建方案并添加了createdAt列,则最终可以更改表以将createdAt列的默认值设置为“ now()”,以便您可以跟踪何时进行迁移。