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

asynkron og afvent på MySQL-kald i node js

Du skal returnere et løfte fra async-funktionen displayDB hvis du vil bruge await søgeord i test, skal du først lære, hvordan løfter fungerer. Pseudokode :

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/da -US/docs/Web/JavaScript/Reference/Global_Objects/Promise



  1. Sådan går du gennem et mysql-resultatsæt

  2. Hvad betyder PÅ [PRIMÆR]?

  3. Almindelige Postgres-opgaver på CentOS 7

  4. Vælg / Indsæt version af en Upsert:er der et designmønster for høj samtidighed?