Mysql
 sql >> Database >  >> RDS >> Mysql

SELECT non funziona in node.js

Come .query() è un metodo asincrono, non potrai return il valore come callback verrà chiamato dopo il return viene valutato.

Dovrai continuare la callback modello:

function query(sql, callback) {
    client.connect();
    client.query(sql, function (err, rows, fields) {
        if (err) {
            callback(err);
        else
            callback(null, rows, fields);
    });

    client.end();
}

Correzione:sembra client.end() consentirà di terminare le query correnti prima che la connessione si chiuda effettivamente.

Tuttavia, chiamando .end() all'interno del callback è comune per molte API in quanto interromperanno tutte le azioni in sospeso.