Python不会从SQlite数据库中选择连接的表,而只是运行查询工作正常

时间:2017-11-10 18:51:02

标签: python sqlite python-3.6

我使用的是Python 3.6.3和SQLite 3.14.2。我有两个表,其中一个表的外键指向另一个表。当我在SQlite浏览器中使用join运行查询时,它工作正常并返回我需要的结果。但是当我尝试在Python中执行查询时,它总是返回空列表。无论我如何简单地进行连接,结果都是一样的。谁能帮我?提前谢谢。

    query = '''SELECT f.ID, f.FoodItemName, f.WaterPerKilo, r.AmountInKilo FROM 
            FoodItems AS f INNER JOIN RecipeItems AS r on f.ID=r.FoodItemID 
    WHERE r.RecipeID = {:d}'''.format(db_rec[0])
    print(query) 
    db_fooditems = cur.execute(query).fetchall() #this returns []

表格如下:

CREATE TABLE "FoodItems" (
`ID`    INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,
`FoodItemName`  TEXT NOT NULL,
`WaterPerKilo`  REAL NOT NULL)
CREATE TABLE "RecipeItems" (
`ID`    INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,
`RecipeID`  INTEGER NOT NULL,
`FoodItemID`    INTEGER NOT NULL,
`AmountInKilo`  REAL NOT NULL)

有一些随机数据。

0 个答案:

没有答案