使用模板文字变量导入 sql 文件并使用 knex raw 执行

科尔比

我有一个大型 sql 查询,我想将其移入 .sql 文件,然后使用 .sql 导入和执行knex.raw()

所以我有类似的东西:

knex().raw(`
  SELECT *
  FROM user_profiles
  WHERE user_id = '${userId}';
`);

我尝试将查询移动到文件中并使用

let sql = fs.readFileSync('./queries/user-profile.sql').toString();

但是当然${userId}不会评估模板文字变量

我考虑过正则表达式,只是手动替换它,但我希望有更好的方法。最好是处理由此创建的 sql 注入漏洞的解决方案。

谢谢 <3

科尔比

我能够使用原始绑定:http : //knexjs.org/#Raw-Bindings

knex().raw(`
  SELECT *
  FROM user_profiles
  WHERE user_id = :userId;
`, {userId: 1});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

Related 相关文章

热门标签

归档