这个 Raw SQL WSI API看起来非常强大,但它似乎也是完成检索我需要的实体 id 的唯一方法。例如,我需要能够按名称检索制造商(讨论是否有更好的方法)。假设最好的方法是发送这样的查询
'SELECT ManufactuerGUID FROM Manufacturer WHERE Name = ' . "$name"
这是一个非常糟糕的主意,我什至讨厌自己写那个……但我不确定如何最好地对其进行消毒。通常参数化是通过 sql 驱动程序 (AFAIK) 完成的,我唯一能想到的……是我可以从DBD::ODBC获取最终的 SQL 字符串吗?欢迎提出其他建议。也许有一个我可以使用的消毒库?
澄清一下,我对 ASP.net Storefront 的 API 没有实际控制权。制造商Name
是唯一来自人工输入的参数,因此我不必担心如何编码其余部分。是的,这个 API 是一个非常愚蠢的想法,如果他们给了我一种参数化查询的方法,那就太好了。