Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

419
Visualizações
Cómo leer desde el script postgresql en node.js

Uso el módulo pg para conectar la base de datos de postgres al proyecto node.js.

 const pg = require('pg') const pool = pg.Pool( { "user":"postgres", "password":"password", "host": "localhost", "db" : "db1" }); pool.connect(); pool.on('connect',(client)=> { client.query("insert into table1(id, name) values(1, "item1")") client.query("select * from table 1",(err, res)=>{ if( err) throw err; console.log(res); }); } )

Mi código sql está en un archivo llamado script.sql. Mi código es muy similar al anterior y quiero leer del archivo script.sql en lugar de poner el código sql dentro de la función de consulta como client.query("insert into table1(id, name) values(1, 'item1')") . ¿Hay alguna manera de hacerlo en el módulo pg o sugiere una forma efectiva de leer el script en node-postgres?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Puede leer el archivo sincrónicamente antes de que se inicie el servidor ( readFileSync bloquea el servidor):

 const pg = require('pg'); const { readFileSync } = require('fs'); const sqlInsert = readFileSync('insert.sql'); const sqlSelect = readFileSync('select.sql'); const pool = pg.Pool({ "user":"postgres", "password":"password", "host": "localhost", "db" : "db1" }); pool.connect(); pool.on('connect', client => { client.query(sqlInsert); client.query(sqlSelect, (err, res) => { if (err) throw err; console.log(res); }); });

o lea de forma asincrónica el archivo después de que se inicie el servidor:

 const pg = require('pg'); const { readFile } = require('fs'); const pool = pg.Pool({ "user":"postgres", "password":"password", "host": "localhost", "db" : "db1" }); pool.connect(); pool.on('connect', client => { readFile('insert.sql', sqlInsert => { client.query(sqlInsert); }); readFile('select.sql', sqlSelect => { client.query(sqlSelect, (err, res) => { if (err) throw err; console.log(res); }); }); });

También puede usar operaciones basadas en promesas en lugar de operaciones basadas en devolución de llamada:

 const pg = require('pg'); const { readFile } = require('fs/promises'); const pool = pg.Pool({ "user":"postgres", "password":"password", "host": "localhost", "db" : "db1" }); pool.connect(); pool.on('connect', async client => { await sqlInsert = readFile('insert.sql'); client.query(sqlInsert); await sqlInsert = readFile('select.sql') client.query(sqlSelect, (err, res) => { if (err) throw err; console.log(res); }); });
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda