我正在运行node-mysql的教程部分中的代码并且它给出了错误
代码
var MySQLPool = require("mysql-pool").MySQLPool;
var pool = new MySQLPool({
poolSize: 4,
user: 'root',
password: 'root',
database: 'test'
});
pool.query("SELECT 'Hello, World!' AS hello", function(err, rows, fields) {
if(err) throw err;
console.log(rows[0].hello);
});
for(var i = 0; i < 10; ++i) {
pool.query("SELECT SLEEP(2), ? AS i", [i], function(err, rows, fields) {
if(err) throw err;
console.log("Slept: " + rows[0].i);
});
}
错误:
/home/comapq/Works/Nodejs/Codes/node_modules/mysql-pool/lib/mysql-pool/pool.js:158 for(Client.prototype中的var键){ ^ TypeError:无法读取未定义的属性“prototype” 在MySQLPool._populate(/home/comapq/Works/Nodejs/Codes/node_modules/mysql-pool/lib/mysql-pool/pool.js:158:23) 在新的MySQLPool上(/home/comapq/Works/Nodejs/Codes/node_modules/mysql-pool/lib/mysql-pool/pool.js:44:7) 在对象。 (/home/comapq/Works/Nodejs/Codes/test-mysql-3.js:2:12) 在Module._compile(module.js:449:26) 在Object.Module._extensions..js(module.js:467:10) 在Module.load(module.js:356:32) 在Function.Module._load(module.js:312:12) 在Module.runMain(module.js:492:10) at process.startup.processNextTick.process._tickCallback(node.js:244:9)
答案 0 :(得分:5)
经过一番研究后我发现了问题。你可能安装了这样的mysql:
npm install mysql
这抓住了最新的2.0.0-alpha5 mysql软件包(开发阶段,大部分未经测试)。您需要安装最新的稳定版本的mysql:
npm install mysql@0.9.6