参数化Python SQLite子查询的困难
我正在尝试在Python中使用SQLite对一个子查询进行参数化,但总是遇到语法错误。我的查询是这样的,
cur.execute("SELECT Name FROM names WHERE SectionCode = (SELECT SectionCode FROM names WHERE Key = ?, (tempemail,))")
简单来说,我想获取一个列表,里面是和存储在变量tempemail中的人的同一组的所有人的名字。我也尝试过不进行参数化查询,但那样又遇到了不同的错误。单独的查询似乎都能正常工作,但像上面那样嵌套在一起就不行了。有没有人能给我一些建议?
1 个回答
2
引号里面的内容是SQL语句;引号外面的就是Python代码。
你想要传给execute
函数的参数是一个Python变量:
cur.execute("SELECT ... = (SELECT ... WHERE Key = ?)", (tempemail,))