我正在使用基于

einaros/ws构建的节点ws服务器.

该服务器必须向数据库发送查询.因为我正在使用

felixge/node-mysql.

当用户连接到服务器时,应检查客户端是否仍存在于数据库中.

这是一段有趣的代码:

console.log("client-liste ist leer");

var query = "SELECT name FROM spieler WHERE name='"+id+"' AND passwort='"+passwort+"'";

var result = queryToDatabase(query);

console.log(getTime() + "DB-Result Abfrage: " + result);

以及查询完成的代码:

var mysql = require('mysql');

var mysqlConnection = mysql.createConnection({

host: dbHost,

user: dbUser,

password: dbPassword,

});

function queryToDatabase(anfrage) {

mysqlConnection.connect();

mysqlConnection.query("USE " + db, function(err, rows, fields) {

if (err) throw err;

});

mysqlConnection.query(anfrage, function(err, rows, fields) {

if (err) throw err;

console.log("rows as String - " + JSON.stringify(rows));

return rows;

});

mysqlConnection.end();

}

控制台中的日志是:

客户端监听

3.8.2012 – 15:29:0 – DB-Result Abfrage:undefined

行作为字符串 – [{“name”:“lukas”}]

有谁理解,为什么函数返回undefined?

我还试图等待Database-Connection完成一个简单的setTimout,但没有改变!

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐