sql >> Base de Datos >  >> RDS >> Mysql

SELECCIONAR no funciona en node.js

Como .query() es un método asíncrono, no podrá return el valor como devolución de llamada se llamará después el return se evalúa.

Tendrás que continuar con la callback patrón:

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

    client.end();
}

Corrección:Parece client.end() permitirá que las consultas actuales finalicen antes de que la conexión realmente se cierre.

Sin embargo, llamar a .end() dentro de la devolución de llamada es un lugar común para muchas API, ya que cortarán cualquier acción pendiente.