2012-01-24 2 views
1

でデータベースからデータを取得:は、Node.jsの

client.query(
'CREATE TEMPORARY TABLE IF NOT EXISTS '+USER+ 
'(username VARCHAR(255), '+ 
'password VARCHAR(255), '+ 
'name VARCHAR(255), '+ 
'picture VARCHAR(255), '+ 
'PRIMARY KEY(username))' 
); 

と私は私のデータベースにすでに与えられたユーザーを持っているかどうかを確認したいと言うことができます、

次のクエリを実行した後にデータを取得するにはどうすればよいですか? :

function checkUser(username,password){ 
client.query('SELECT username, password FROM ' + USER + 'WHERE username=?', [username] , 'AND password=?', [password] 
function (err, results, fields) { 
     if (err) { 
      throw err; 
     } 
}); 
} 

エラーが発生した場合は処理されますが、必要なデータはどのように取得できますか?

ご協力いただければ幸いです!

+1

ルックでデータを持っています。 – fent

+0

これは一部のサイトの例ですが、結果とフィールドは何を保持していますか? – Itzik984

+0

'console.log'を見てみましたか? :) – nicolaskruchten

答えて

2

エラーが存在しない場合、あなたは `results`と` fields`を変数でresults

function checkUser(username,password,haveResult) { 
    client.query('SELECT username, password FROM ' + USER + 'WHERE username=? AND password=?', [username, password], 
    function (err, results, fields) { 
     if (err) { 
      // problems 
      throw err; 
     } else { 
      // do something with data - it is in results array 
      var checkResult = true; // here something depending on query result 
      haveResult(checkResult); // continue via callback 
     } 
    }); 
} 


// use it 
checkUser('bar', 'baz', function(isGood) { 
    console.log('user is' + (isGood? 'good' : 'bad')); 
});