从我的 SQL 数据库获取记录(大约 50 行)时出现以下错误。我的应用程序是在nodejs和express中开发的。
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 = 池;
最佳答案
我遇到了相同的错误消息,但问题的原因可能不同。最终,我的问题的原因是我的存储过程中的列名没有反引号(`),导致它们被视为变量。
在我的存储过程主体中为列名称添加反勾修复了该问题。
关于mysql - 使用mysql应用程序在nodejs中收到无效字段长度错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40781793/