我希望同时在一个函数中有两个选择查询。
在shop.html中:
{% for each in result %}
{{ each }}<br>
{% endfor %}
{% for each in result2 %}
{{ each }}<br>
{% endfor %}
在app.py中:
@app.route('/shop/<data>')
def shop(data):
db = MySQLdb.connect("localhost","myusername","mypassword","mydbname" )
cursor = db.cursor()
cursor2 = db.cursor()
query_string = "SELECT * from users"
query_string2 = "SELECT * from people"
cursor.execute(query_string)
cursor2.execute(query_string2)
result = cursor.fetchall()
result2 = cursor.fetchall()
db.close()
return render_template('shop.html', result=result, result2=result2)
但它不起作用。它只是获取并打印第一个选择查询。 我该如何解决?
答案 0 :(得分:1)
您尝试从一个游标中取两次:
result = cursor.fetchall()
result2 = cursor.fetchall()
请注意,您在两种情况下都调用了cursor.fetchall()
。您希望第二个结果来自第二个游标:
result = cursor.fetchall()
result2 = cursor2.fetchall()