• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

104
Vistas
¿Cómo evito la inyección de sql en una solicitud WHERE IN con consulta parametrizada?

Esta es la próxima aplicación y estoy usando postgresql para mi base de datos. Estoy acostumbrado a escribir mis solicitudes así:

 export const getOneCourse = (courseId: string): Promise<Course> => { let sql = `SELECT title, description, category, techno FROM courses where courseid = $1` return new Promise((resolve, reject) => { pool.query(sql, [courseId], (err, result) => { if (err) reject(err); resolve(result); }); }); };

Pero cuando quiero usar WHERE id IN ('1', '2', '5'), para obtener datos correspondientes a varios ID de cursos, parece que no puedo encontrar la sintaxis correcta para el parámetro. He probado esos:

 SELECT something FROM table WHERE id IN $1 SELECT something FROM table WHERE id IN ($1)

lo único que funciona hasta ahora es

 `SELECT * FROM courses WHERE category = $1 AND courseid IN (${coursesId})`;

pero ¿alguien sabe de un parámetro que me permita evitar el uso de la matriz de ID directamente? Gracias !

about 3 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda