使用mysql应用程序在nodejs中收到无效字段长度错误

时间:2016-11-24 08:57:47

标签: mysql node.js express

我从sql数据库中获取记录(apx 50行)时遇到错误。我的应用程序是在带有express的nodejs中开发的。 enter image description here

var common = require(__base + 'routes/common.js');
var dbhelper = require(__base + 'routes/dbhelper.js');

exports.GetStates = function (callback) {
    dbhelper.pool.getConnection(function (err, connection) {
        // Use the connection
        connection.query('CALL GetStates()',
            function (err, res) {
                connection.release();
                if (err) {
                    common.ActionOutput.Status = common.ActionStatus.Error;
                    common.ActionOutput.Message = 'System Error: ' + err.message;
                } else {
                    common.ActionOutput.Status = common.ActionStatus.Success;
                    common.ActionOutput.Result = res[0][0];
                }
                return callback(JSON.stringify(common.ActionOutput));
            });
    });
};

dbhelper.js is

// Database connection
var mysql = require('mysql');

var pool = mysql.createPool({
    connectionLimit: 10,
    host: 'my ip',
    user: 'user',
    password: 'pass',,
    database: 'ssdsdas'
});

exports.pool = pool;

1 个答案:

答案 0 :(得分:0)

我遇到了相同的错误消息,但我们的问题可能会有所不同。最终,我的问题的原因是我的存储过程中的列名没有返回标记(`),导致它们被视为变量。

在我的存储过程体中添加返回刻度以修复列名称。