为什么我的SQL查询返回一个空表?

时间:2019-11-20 11:12:42

标签: python sqlite flask

我对python和flask很陌生,我一直在尝试制作一个人们可以存储收据的程序。我有三个表,用户,收据和user_receipts。我会尝试制作一个页面,其中列出已登录用户的所有收据,但是即使用户输入了收据,每次都会得到空白表。

def list():

    global user_id


    con = sql.connect("database.db")
    con.row_factory = sql.Row

    cur = con.cursor()
    cur.execute("select * from receipts WHERE receiptID = (select receipt_id from user_receipts WHERE user_id =?)", (user_id,))

    rows = cur.fetchall();
    return render_template("view_receipts.html",rows = rows)

我知道我的变量命名方法不一致,但是我知道哪些变量属于哪个表,我100%确信它们是正确的。 我只是不确定为什么它每次都会给我空表。

1 个答案:

答案 0 :(得分:0)

我建议首先通过执行简单的打印语句进行调试,首先检查flask或SQLite是否存在问题。

如果SQLite出现问题,我建议尝试修改变量名称,并查看制作表时是否有错误

如果其他所有方法均失败,请尝试移至类似sqlalchemy的位置,以便获得更可靠的数据库。