我在擺弄Python和SQLite。我有一個表如此構建:python 2.7 sqlite3遊標只返回一個結果
PID | CID | a | b
=================
1 | 1 | ...
1 | 2 | ...
2 | 1 | ...
2 | 2 | ...
其中PID是一個對象的ID,而CID是另一個對象的ID。基本上,一個表格會跟蹤這兩個對象與屬性(a,b等等)之間的關係,這些屬性可能會覆蓋這些對象的關係。
當我在Python執行以下語句(c是一個sqlite3的光標):
results = c.execute("SELECT cid FROM test WHERE pid=?", (the_related_id,)).fetchmany()
我只在列表中得到一個結果,但是,當我運行在同一個查詢(?)一個SQLite瀏覽器,我得到了許多預期的結果: SELECT cid FROM test WHERE pid=1
這是怎麼回事?
'fetchmany'回報同時* N *多行,並且可以多次調用。使用'fetchall'來代替。 –
@JonClements請做出答案。 –