3
我使用的是建立在einaros/ws節點WS服務器。 該服務器必須向數據庫發送查詢。爲此,我使用felixge/node-mysql。節點的MySQL connection.query()返回undefined
當用戶連接到服務器時,它應該如果客戶端在數據庫中仍存在進行檢查。
這裏是代碼的有趣部分:
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();
}
在控制檯中的日誌是:
客戶清單當然IST閱讀
2012年8月3日 - 15:29:0 - DB-結果Abfrage:未定義
行作爲字符串 - [{「な我 「:」 盧卡斯「}]
有誰明白,爲什麼函數返回undefined? 我也試着等待Database-Connection完成一個簡單的setTimout,但沒有任何改變!