3
respostas

Conexão sem a função ".connect()" ???

Desculpa a minha dúvida nub irmão, mas como como diabos seu código conectou sem a função connect() da connection do mysql?

no meu não funcionou, só rodou quando eu inclui a chamada conforme código abaixo:

module.exports = function(app){
    app.get('/produtos', function(req,res){

        var mysql      = require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : 'password',
  database : 'livrariadb'
});
        connection.connect();
        connection.query('select * from livro', function(err, results){
            res.send(results);
        });

        connection.end();
//        res.render("produtos/lista"); 
    });
}
3 respostas

O Kenard, tudo bem? Não existe dúvida nub amigo, vamos lá.

O método query implicitamente abre a conexão se ela já não tiver sido aberta antes, isso é o que a documentação explica: https://www.npmjs.com/package/mysql

Aconteceu algum erro sem o connect() ? Posta aqui qual foi o erro que o problema pode ter sido outro.

Espero ter ajudado, bons estudos!

Não houve erro... sem o connect(), simplesmente não listou na tela.

Quase esqueço: Particularmente, no node, a grande maioria dos erros são retornados e não lançados, isso faz uma sutil diferença na hora de debugar isso. Sem o connect(), testa lançar o erro se o erro acontecer. algo como:

connection.query('select * from livro', function(err, results){
    if (err) throw err;
    res.send(results);
});