我目前正在建设的SQL查询根据用户的输入。 一个例子如何做到这一点可以看这里:
def generate_conditions(table_name,nameValues):
sql = u""
for field in nameValues:
sql += u" AND {0}.{1}='{2}'".format(table_name,field,nameValues[field])
return sql
search_query = u"SELECT * FROM Enheter e LEFT OUTER JOIN Handelser h ON e.Id == h.Enhet WHERE 1=1"
if "Enhet" in args:
search_query += generate_conditions("e",args["Enhet"])
c.execute(search_query)
由于SQL的每一次变化,我不能插在执行调用,这意味着我应该手动逃脱字符串值。 然而,当我搜索大家指出来执行...
我也并不满足于我如何生成查询,因此,如果有人有另一种方式将是巨大的也是任何想法!