使用 sqlalchemy core,您可以绑定一个参数,然后在执行时填写它,例如query = select([my_table]).limit(bindparam('lim'))
session.execute(query, lim=10)我拥有它,以便收到的查询可能会也可能不会使用某些参数。所以我想要一种方法来验证参数是否存在,甚至获取在执行时必须替换的参数列表。例如,这样做可以允许像上面这样的查询中的限制。可能需要替换的值是已知的,因此只需检查它们是否确实存在。目前,作为一个小的临时解决方法,我发现我可以将名称设置为复杂的东西,例如随机数字字符串,然后检查它们是否以查询的字符串形式存在。当然,还存在其他解决方案,例如存储/传递哪些已使用/尚未使用,但我想看看是否有一种方法可以检查哪些存在。并正在被期待。
1 回答

SMILET
TA贡献1796条经验 获得超4个赞
您可以从编译的查询中获取参数,如下所示:
>>> q = select([test1]).limit(bindparam('lim'))
>>> c = q.compile()
>>> c.params
{'lim': None}
添加回答
举报
0/150
提交
取消