2017-09-04 4 views
-1

NodeJs-MySQLのW3Schoolチュートリアル:SELECT cmmandは適切な形式で出力しません。出力 "RowDataPacket"の各行に単語が表示されます。それを避ける方法は?NodeJs-MySQL SELECTが適切な出力を返さない

C:\Users\Raju>node demo_db_select.js 
[ RowDataPacket { id: 1, name: 'John', address: 'Highway 71' }, 
    RowDataPacket { id: 2, name: 'Peter', address: 'Lowstreet 4' }, 

Iは、次のコード使用:これは、内部のオブジェクトはクラスRowDataPacketのinstaneであることを意味

var mysql = require('mysql'); 

    var con = mysql.createConnection({ 
     host: "localhost", 
     user: "yourusername", 
     password: "yourpassword", 
     database: "mydb" 
    }); 

    con.connect(function(err) { 
     if (err) throw err; 
     con.query("SELECT * FROM customers", function (err, result, fields) { 
     if (err) throw err; 
     console.log(result); 
    }); 
    }); 

答えて

0
var data = [ 
    RowDataPacket { id: 1, name: 'John', address: 'Highway 71' }, 
    RowDataPacket { id: 2, name: 'Peter', address: 'Lowstreet 4' } 
] 

を。あなたはMySQLのクエリを実行し、結果変数で選択した行と列を格納している

data[0].id // 1 
data[0].name // John 
data[1].name // Peter 
+0

どのように私は(昨日)の上に掲示私の質問で述べた私のコードを変更しない –

+0

ませ修正など。上記のように、 'result [0] .id'という言葉を使うだけです。 – RaghavGarg

0

:あなたはまだ、単にそれが好きで使用することができます。実際に結果はオブジェクトです。ですから、forループを実行して、コードで書いたすべての値を出力してください。

このコードを試してみてくださいません:

var mysql = require('mysql'); 
var con = mysql.createConnection({ host: "localhost", user: "yourusername", password: "yourpassword", database: "mydb" }); 
con.connect(function(err) { 
if (err) throw err; 
con.query("SELECT * FROM customers", function (err, result, fields) { 
if (err) throw err; 
for(let i in result){ 
    console.log("id="+result[i].id); 
    console.log("Name="+result[i].name); 
console.log("address="+result[i].address); 
} 
    }); 
}); 
+0

あなたのコードを試しました。 "RowDataPAcket"が出力に表示されません。しかし、私は結果を表形式で期待していましたが、私は以下のような結果を得ました: –

+0

あなたのコードを試しました。現在、 "RowDataPacket"は出力に表示されません。しかし、出力は表形式ではなく、次のようになります。Name = John address = Highway 71 –

+0

IDは各行にも表示されませんか? –

関連する問題