首页 > 解决方案 > 如何使用 upsert sequelize cli 更新现有数据

问题描述

我想使用迁移更新一些数据,我有一个包含以下信息的表:

id 用户名
1 用户 1
2 用户 2
3 用户 3
4 用户 4

遵循文档:

https://sequelize.org/master/class/lib/query-interface.js~QueryInterface.html#instance-method-addColumn

我做的:

 const db = require('../src/models');
'use strict';

module.exports = {
  up: (queryInterface, Sequelize) => {
    return Promise.all(
    [
      queryInterface.upsert('Users',{userName:'User1 Updated'},{userName:'User1 Updated'},{userName:'User1'},db.Users,{}),
      queryInterface.upsert('Users',{userName:'User2 Updated'},{userName:'User2 Updated'},{userName:'User2'},db.Users,{}),
      queryInterface.upsert('Users',{userName:'User3 Updated'},{userName:'User3 Updated'},{userName:'User3'},db.Users,{}),
      queryInterface.upsert('Users',{userName:'User4 Updated'},{userName:'User4 Updated'},{userName:'User4'},db.Users,{}),
    ]
    )
  },

  down: (queryInterface, Sequelize) => {
    ...
  }
};

但我收到一个错误:

错误:关键字“WHEN”附近的语法不正确。

标签: node.jssql-serversequelize.jssequelize-cli

解决方案


推荐阅读