Tutorial Simples e Prático sobre Node.js e PostgreSQL | SharkLabs
Tutorial Simples e Prático sobre Node.js e PostgreSQL
bookmark Node.js access_time 1/17/2020 person Gabriel Willemann nodejs 4/9/2020, 9:16:32 PM SharkLabs SharkLabs
Aqui você aprende a conectar o Node.js ao PostgreSQL e utilizando Promisses. Tutorial sem enrolação e direto ao ponto!
Uma das principais vantagens do Node.js é a sua simplicidade para criar e executar scripts. Em um minuto você cria um arquivo JavaScript e já pode executá-lo, isso é fantástico!
Sobre o PostgreSQL , na minha opinião, atualmente ele é melhor banco de dados relacional e ainda é Open Souce e totalmente gratuito. Já trabalho à muitos anos com PostgreSQL e ele nunca me decepcionou.
Sempre que preciso executar scripts mais complexos ou migrar alguma informação entre bases de dados, eu prefiro fazer isso com Node.js e PostgreSQL.
Existem diversos drivers que conectam o Node.js ao PostgreSQL, mas o que eu mais gosto é o Node-Postgres (este é o link do NPM ). Só para você ter uma ideia, este driver tem mais de 1 milhão de downloads semanais (no momento que escrevo este artigo).
Além disso, ele possui recursos bem avançados, como Pool de conexão , conexões TLS/SSL e Native Bindings . Um item que eu gosto muito é o suporte a Promises , uma vez que isso é algo bem importante quando você trabalha com código assíncrono.
Depois que o driver está instalado (dúvidas sobre a instalação ver o Get Started ), é só criar um arquivo JavaScript e sair programando.
No exemplo abaixo, primeiramente é criado a conexão com o banco de dados, depois é realizada a criação de uma tabela, em seguida é feita inserção de registros e, por fim, é executada uma Query para mostrar os registros que estão armazenados:
await showRows();
let { Client } = require('pg');
conn = new Client({
database: 'tutorial_nodejs_pg',
let { rows } = await conn.query(
`insert into people (id, name) values (1, 'Paul McCartney'), (2, 'John Lennon') returning *`
console.log(`Rows inserted: ${rows.length}`);
async function showRows() {
let { rows } = await conn.query(`select * from people`);
Veja que para criar a conexão, basta importar e instanciar a classe Client. A partir disso, é só passar os comandos SQL para função Query. É fácil perceber como o código fica simples e de fácil entendimento.