N'utilisez jamais la concaténation de chaînes pour interroger, vous disposez déjà d'un mécanisme appelé instruction préparée, semblable à une signature
.query('SELECT * FROM `books` WHERE `author` = ?', ['David'])
Il aseptisera les entrées pour vous et empêchera partiellement les attaques par injection sql, tout en validant toujours les valeurs d'entrée. Et si vous ne voulez pas utiliser ORM comme typeorm
, Sequelize
, vous pouvez utiliser knex.js
qui ne peut que créer des chaînes de requête et gérer entièrement l'interaction avec la base de données