我有一个Flask应用,它正执行一个SQL查询从MySQL数据库中检索零件列表。问题在于,我确定这个SQL查询是正确的,因为它在MySQL Workbench中能正常运行并得到结果,但当我把同样的查询在应用程序中运行时,却返回了一个空列表。
SQL查询语句是这样的:
SELECT job_part.*, part.part_name, part.cost
FROM job_part
JOIN part ON job_part.part_id = part.part_id
WHERE job_part.job_id = 5;
(由于无法显示您上传的图片,此处假设图片内容与上述SQL查询一致)
在Python代码中,我是这么写的:
connection = getCursor() # 获取数据库连接和游标
sql = """
SELECT job_part.*, part.part_name, part.cost
FROM job_part
JOIN part ON job_part.part_id = part.part_id
WHERE job_part.job_id = %s;
"""
connection.execute(sql, (jobNo,))
partList = connection.fetchall() # 获取查询结果
connection.close() # 关闭数据库连接
print(partList) # 输出查询结果
其中,jobNo变量的值是字符串形式的“5”,并且我已经尝试将其转换为整数类型,但是结果没有变化。
然而,在终端上,我始终只能看到输出一个空列表“[]”。
我对于这种情况感到困惑,因为理论上相同的查询应当在应用程序中也能得到相同的结果。