sql >> Database >  >> RDS >> Mysql

async en wacht op MySQL-oproep in node js

U moet een belofte teruggeven van de async-functie displayDB als je de await . wilt gebruiken zoekwoord in de test, moet u eerst leren hoe beloften werken. Pseudo-code:

var displayDB = () => {
    return new Promise((resolve,reject)=>{
        connection.query('SELECT * FROM products', (err, resp) => {
            if (err) {
                reject(err)
            } else {
                const table = [];
                resp.forEach((product) => {
                    obj = {
                    'Product ID': product.productID,
                    'Category': product.category,
                    'Price': product.price,
                    'Stock': product.stockQuantity
                    }
                    table.push(obj)
                })
                resolve(table)
            }
        })
    })
}


var test = async () => {
   try{
    console.table(await displayDB())
    }catch(e){
        console.log(e)
    }
    connection.end()
}
test()

https://developer.mozilla.org/en -US/docs/Web/JavaScript/Reference/Global_Objects/Promise



  1. Een overzicht van de nieuwe opgeslagen procedures in PostgreSQL 11

  2. Perl DBI - voer SQL-script uit met meerdere instructies

  3. standaard een kolom met lege tekenreeks

  4. Verbinding maken met de MySQL-database