es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo escapar parámetros en node-postgres?

Sé sobre consulta parametrizada, pero dado que debo construir programáticamente la condición where, teniendo en cuenta los parámetros y construyendo el arreglo de parámetros es una tarea mucho más compleja que simplemente llamar a una función de escape cuando sea necesario. Entonces:

¿existe una función de escape de parámetros en node-postgres?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Sí, existe una función de escape proporcionada por node-postgres llamada pg escaping. Se puede utilizar para escapar valores al construir consultas sin tener que construir manualmente una matriz de parámetros. Aquí tienes un ejemplo:

    const { Client } = require('pg');
    
    const client = new Client();
    
    // Utiliza la función de escape de pg para escapar de manera segura un valor
    const valorEscapado = client.escapeLiteral("O'Reilly");
    
    // Utiliza el valor escapado en una consulta SQL
    const consulta = `SELECT * FROM books WHERE author = ${valorEscapado}`;
    
    // Ejecuta la consulta
    client.query(consulta, (err, res) => {
      if (err) throw err;
    
      console.log('Resultado:', res.rows);
    });
    

    En el ejemplo anterior, se utiliza client.escapeLiteral() para escapar la cadena "O'Reilly", que luego se utiliza en una consulta SQL sin tener que construir manualmente una matriz de parámetros. Ten en cuenta que este método solo debe utilizarse para escapar valores literales y no para construir consultas SQL dinámicas.

Comments are closed.