SequelizeUniqueConstraintError:验证错误

问题描述

我正在使用sequelize和node.js。我有一列想要将其类型更改为唯一列,当我要运行迁移时出现此错误,该如何解决

ERROR: SequelizeUniqueConstraintError: Validation error

这是我的代码


up: (queryInterface,Sequelize) => {
    return Promise.all([
      queryInterface.changeColumn('PersonalInfo','ssn',{type: Sequelize.STRING,unique: true
      }),queryInterface.changeColumn('PersonalInfoDraft',unique:true
      })
    ])
  }

解决方法

您需要确保这些列首先没有重复的数据。如果没有,则无法将它们更改为唯一,因为它不符合规则

这里是一个示例文章,内容涉及如何删除重复的行并保留每一行的一个实例。在运行删除操作之前,请确保备份数据,以防万一。

https://stackoverflow.com/a/63735751/14167216