提问人:TheDude 提问时间:9/18/2023 最后编辑:TheDude 更新时间:9/18/2023 访问量:24
在 NodeJS 中使用 node-mssql 构造准备好的 sql 模板
Construct prepared sql template with node-mssql in NodeJS
问:
我有一个 Express 应用程序,我正在使用 node-mssql 库连接到 mssql 数据库,以便从中检索和写入数据。
现在,在 Express 应用程序的后端,我希望有一个功能,该功能接收一组可选的字段值,这些值对应于数据库中的表架构,并且我想用它执行带有 Where 子句的简单 Select。
我希望功能尽可能灵活,这就是为什么我假设我不知道我事先收到哪一组字段值,因此,想要构建一个准备好的 sql 模板,该模板应根据收到的字段值进行填充。
基本上我想实现此线程中描述的内容 SQL WHERE 列 = 一切
所以结果应该是:
如果集合中提供了任何字段值,则它应该仅在 Where 子句中使用这些字段值执行准备好的 sql 语句。
如果未提供字段值,则它应该执行准备好的 sql,而对 Where 子句没有限制。这基本上与在没有 Where 子句的情况下执行相同的 sql 语句相同。
我相信有一个优雅的解决方案,无需编写两个不同的 sql 语句,然后检查集合中是否提供了任何字段值,然后选择哪个 sql 语句是正确的。
从上面的线程中,我已经发现该解决方案在 sql 客户端中对我有用,如果未提供字段值,我可以想象在 Express 应用程序中设置为默认值。SELECT * FROM table WHERE column = column
column
但是,我不确定如何将此类型()提供给node-mssql并使其正确解释它。column
答: 暂无答案
上一个:如何防止PHP中的SQL注入?
下一个:MySQL准备语句明显慢于查询
评论