'如表'Node中串行化模块的语法



我有一个对象想要插入到我的MSSQL数据库中的表中。

根据github上的Seriate文档,这应该不是问题。

我的设置如下:

apiRoute.js

module.exports = function(express, schema) {
    var apiRoute = express.Router();
    apiRoute.post('/test-path', function(req, res) {
        schema.test()
        .then(function(results) {
            res.json(results);
        }, function(err) {
           res.json(err); 
        });
    });
    return apiRoute;
}

schema.js

var sql     = require('seriate');
var when    = require('when');

var test = function() {    
    return sql.execute({
        query: "select * from @children",
        params: { 
            children: {
                val: [
                    { id: 1, firstName: "James", middleName: "Paul"},
                    { id: 2, firstName: "John", middleName: "Winston" },
                    { id: 3, firstName: "George", middleName: "Harold" },
                    { id: 4, firstName: "Richard", middleName: "Parkin" }
                ],
                asTable: {
                    id: sql.INT,
                    firstName: sql.NVARCHAR(50),
                    middleName: sql.NVARCHAR(50)
                }
            }
        }
    });
}
module.exports = {
    test: test
}

当我用Postman测试这个时,请求一直在进行,直到它最终超时。

如果我只是在没有asTable部分的情况下执行查询:

 select 1

它工作得很好。

我错过了什么?

您尝试过使用.step 吗

这个:

结果交易.commit()

我也遇到了同样的问题,但当我使用这种方法进行修改时,它运行得很好,但你还需要添加一个终止函数来停止(即回调函数、.end等)

如果这没有意义,请告诉我,我会发布整个示例代码。

最新更新