我试图做一个选择Django的查询语法(必须是字符串或只读缓冲器,而不是数组)
query = "select * from snmptt order by id desc limit %s", limit
cursorMYSQL.execute(query)
我从形式
limit = form_limit.cleaned_data['limit']
我已经使用得到限制这个语法(而不是%)为插入和它的工作,所以我不明白为什么现在不工作。
谢谢!
我试图做一个选择Django的查询语法(必须是字符串或只读缓冲器,而不是数组)
query = "select * from snmptt order by id desc limit %s", limit
cursorMYSQL.execute(query)
我从形式
limit = form_limit.cleaned_data['limit']
我已经使用得到限制这个语法(而不是%)为插入和它的工作,所以我不明白为什么现在不工作。
谢谢!
查询和参数应该是执行方法的独立参数。
query = "select * from snmptt order by id desc limit %s"
params = [limit]
cursorMYSQL.execute(query, params)
但首先让我问你一个问题,当你使用Django时,为什么要创建一个游标并手动执行这样一个简单的查询? – e4c5
如果将其更改为'“select * from snmptt order by id desc limit%s”%limit',会发生什么? – cezar
@cezar使用'“...”%limit'是个不错的主意。它可能工作,但它不安全,并使您容易受到SQL注入的影响。 – Alasdair