sql >> Databasteknik >  >> RDS >> Mysql

NodeJS och mysql:vänta på frågeresultat

I din executeQuery-funktion har du använt callbacks för att vänta på resultaten. På samma sätt, genom att implementera dem i getResult-funktionen, kan du få den att vänta på resultaten efter query exekvering. Något sånt här.

var mysql = require('mysql');
var pool = mysql.createPool({
    connectionLimit : 100,
    host     : 'host',
    user     : 'user',
    password : 'password',
    database : 'database',
    debug    : false 
 });

function executeQuery(query, callback) {
  pool.getConnection(function (err, connection) {
    if (err) {
        return callback(err, null);
    }
    else if (connection) {
        connection.query(query, function (err, rows, fields) {
            connection.release();
            if (err) {
                return callback(err, null);
            }
            return callback(null, rows);
        })
    }
    else {
        return callback(true, "No Connection");
    }
  });
}


function getResult(query,callback) {
  executeQuery(query, function (err, rows) {
     if (!err) {
        callback(null,rows);
     }
     else {
        callback(true,err);
     }
  });
}

function getServers() {
  getResult("select * from table",function(err,rows){
    if(!err){
        return rows;
    }else{
        console.log(err);
    }
  });   
}

exports.getList = getList;



  1. MySQL INSERT INTO med dubbla villkor för IF NOT EXIST

  2. Oracle Security Alert för CVE-2021-44228

  3. Databas hög tillgänglighet för Camunda BPM med MySQL eller MariaDB Galera Cluster

  4. hur man skapar ISO-8601 gregoriansk datumtabell i postgres