einaros/ws에 구축 된 노드 ws 서버를 사용하고 있습니다. 해당 서버가 데이터베이스에 쿼리를 보내야합니다. 그 때문에 나는 felixge/node-mysql을 사용하고 있습니다.node-mysql connection.query()는 정의되지 않은 값을 반환합니다.
사용자가 서버에 연결할 때 클라이언트가 여전히 데이터베이스에 있는지 확인해야합니다. 쿼리가 완료
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();
}
로그는 다음과 같습니다
클라이언트 liste IST 여기
코드의 흥미로운 작품이다 leer3.8.2012 - 15 : 29 : 0 - DB 결과 Abfrage : 정의되지 않음
행을 문자열로 - [{ "na 나 ":"루카스 "}] 함수가 정의되지 않은 반환 이유를
사람이 이해 하는가? 또한 데이터베이스 연결이 간단한 setTimout으로 끝나기를 기다리려고했지만 아무 것도 바뀌지 않았습니다!