如何使用SequelizeJS从表中返回非常插入的ID?

时间:2018-01-09 13:30:51

标签: sql-server node.js sequelize.js

我有一张具有身份证的表。只要将新记录插入给定表,该值就会自动递增。但是,我无法返回插入的ID以回应我的查询。

module.exports = sequelize.define('MyTable', {
    aField1: Sequelize.STRING,
    aField2: Sequelize.STRING,
    id: { type: Sequelize.BIGINT, primaryKey: true, autoIncrement: true }
})

通过调用create()函数将项正确插入数据库,但执行的查询不返回任何ID。日志告诉我以下内容:

Executing (fdfd7f79d028c57c1c6f): 
INSERT INTO [dbo].[MyTable] ([aField1], [aField2]) 
OUTPUT INSERTED.* VALUES ('aValue1', 'aValue2');

如何在此Sequelize查询中返回插入的ID?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

据我所知,您只想发送 id 作为回复。 代码应该看起来像

`.post((req, res, next) => {
    DATABASE_NAME.create(req.body)
    .then((result) => {
        //console.log(result);
        res.statusCode = 200;
        res.setHeader('Content-Type', 'application/json');
        res.json(result.id);
    }, (err) => next(err))
    .catch((err) => next(err));
})`