Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Node.js Usando async/await com mysql

async function getResult(){

    let connection;
    try {

      connection = await mysql.createConnection(dbConfig);
      const result = await connection.query('select height from users where pin=1100');

      console.log(result[0].height);
      return result[0].height;

    } finally {
      if (connection && connection.end) connection.end();
    }

}

Corrige os seguintes problemas:
  1. Se você pode usar async/await, é inútil ainda usar then para essas situações.
  2. Você não precisa de JSON stringify e parse se você estiver registrando algo.
  3. Se você detectar um erro ao fechar uma conexão, você realmente deve relançar para que a função que chama getResult não recebe lixo/undefined de volta. Em vez de relançá-lo, acabei de adicionar um finally bloco que sempre fecha a conexão, seja ela bem-sucedida ou não.
  4. Como você está usando async/await, seu mecanismo javascript deve ser compatível com let e const . É melhor que var =)
  5. Você não estava retornando nada.