seriate RequestError:SqlContext错误。步骤“GetData”失败:“超时:请求未能在15000ms内完成

时间:2016-05-03 18:04:56

标签: sql node.js timeout connection-timeout node-seriate

我正在尝试使用seriate从节点服务器在我的SQL数据库上运行存储过程。但是我得到了以下错误,我不知道为什么。我非常感谢你的帮助。

错误:{[RequestError:SqlContext错误。 步骤“GetData”失败:“超时:请求未能完成i 15000ms“]   名称:'RequestError',   消息:'SqlContext错误。步骤“GetData”失败:“超时 请求未能在15000ms“'完成,   代码:'ETIMEOUT',   编号:'ETIMEOUT',   lineNumber:未定义,   state:undefined,   class:undefined,   serverName:undefined,   procName:undefined,   前错误:[],   步骤:'GetData'}

这是我的代码:

var sql = require( "seriate" );

var connection = {
    name: "example-1",
    user: "user",
    password: "pass",
    host: "host_ip",
    database: "Test"
};    

exports.getDataSql = function(req, res) {
    var results = {};

    sql.execute( connection, {
       procedure: "GetData",
        params: {
            Name: {
                type: sql.NVARCHAR(50),
                val: "user2"
            },
            LName: {
                type: sql.NVARCHAR(50),
                val: "user1"
            },
            finalName: {
                type: sql.NVARCHAR(50),
                val: "user3"
            }
        }
    }).then( function( results ) {
        console.log("getting data: ");
        res.json(results[0][0]);

    }, function( err ) {
        console.log( "Error", err );
        res.status(500).send({ error: 'Something failed!' });
    } );

};

3 个答案:

答案 0 :(得分:3)

您可能需要按如下方式提升请求超时:

var connection = {
    name: "example-1",
    user: "user",
    password: "pass",
    host: "host_ip",
    database: "Test",
    requestTimeout: 300000
};    

还有一个可能对您有影响的connectionTimeout属性。但是这个问题可能就是requestTimeout

答案 1 :(得分:0)

就我而言,该错误是由于未提交的交易引起的。关闭SQL Management Studio会释放表,因为我从编辑器提交上一个事务时出错。

答案 2 :(得分:0)

我使用该库实现的mssql。 mssql使用乏味的连接到远程数据库。 就我而言,我是在Azure函数内部使用它的,没有调用

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div id="info"></div>

<div id="down">
  scroll down please...
</div>

<video id="video1" controls muted played="false">
  <source src="https://www.w3schools.com/html/movie.mp4" type="video/mp4">
  <source src="https://www.w3schools.com/html/movie.ogg" type="video/ogg">
  Your browser does not support the video tag.
</video>

<video id="video2" controls muted played="false">
  <source src="https://www.w3schools.com/html/mov_bbb.mp4" type="video/mp4"/>
  <source src="https://www.w3schools.com/html/mov_bbb.ogg" type="video/ogg"/>
  Your browser does not support the video tag.
</video>

在每次执行结束时,它用尽了所有连接,然后开始超时。繁琐的操作应该可以提供更好的错误描述。