#javascript #sql #security #sequelize.js
#javascript #sql #Безопасность #sequelize.js
Вопрос:
Используя Sequelize, я могу выполнять необработанные запросы и безопасно отправлять параметры (благодаря параметрам привязки к базе данных через параметры:
const baz = 1;
sequelize.query(
'select * from foo where bar=:baz',
{ replacements: { baz } },
);
Существует ли аналогичный способ решения IN
(с несколькими значениями)?
const baz = [1, 2, 3];
sequelize.query(
'select * from foo where bar IN (:baz)',
{ replacements: { baz } },
);
Ответ №1:
Согласно документации:
Замены массива будут обработаны автоматически, следующий запрос выполняет поиск проектов, статус которых соответствует массиву значений
Так что это действительно должно сработать:
const baz = [1, 2, 3];
sequelize.query(
'select * from foo where bar IN (:baz)',
{ replacements: { baz } },
);