首页 文章

Sequelize - 更新触发器的表 - 无法正常工作

提问于
浏览
0

我对Sequelize和Node.js有点新意

我试图使用Sequelize与MSSQL数据库,并找出我能用它做什么 .

我 Build 了连接,基于现有表创建了一个模型 .

这样的表上有多个触发器 .

当我尝试执行这样的事情

sampletable.update({
  NAME: "TEST"
},
{
  where: {ID: 0},
  silent: true
},
).then(function(result){
  console.log(result);
})

其中“sampletable”是导入的模型

var sampletable = sequelize.import('./models/sampletable.js');

用“SequelizeAuto”创建(基于现有表的结构)

var SequelizeAuto = require('sequelize-auto')
var auto = new SequelizeAuto(config.database, config.username, config.password, config);
auto.run(function (err) {
  if (err) throw err;
});

我得到以下错误

"Unhandled rejection SequelizeDatabaseError: The target table 'sampletable' of the DML statement cannot have any enabled triggers if the statement contains an OUTPUT clause without INTO clause."

声明已执行

Executing (default): UPDATE [sampletable] SET [NAME]=N'test' OUTPUT INSERTED.* WHERE [id] = 0

是否可以使用sequelize更新带触发器的表?

如果是的话,有人能指出我正确的方向吗?我用谷歌搜索,检查了doco,但我可以找到很多关于它的信息 .

TIA

1 回答

  • 0

    尝试将 hasTrigger: true 添加到您的模型选项中 . 这可以防止Tedious尝试从基表输出结果,而是使用临时表 .

相关问题