<p>今天我刚和一些同事讨论了python的db api fetchone vs fetchmany vs fetchall。</p>
<p>我确信每个用例都依赖于我正在使用的db api的实现,但是一般来说,fetchone vs fetchmany vs fetchall的用例是什么?</p>
<p>换言之,以下是等价物吗?还是有一个比其他人更受欢迎?如果是,在什么情况下?</p>
<pre><code>cursor.execute("SELECT id, name FROM `table`")
for i in xrange(cursor.rowcount):
id, name = cursor.fetchone()
print id, name
cursor.execute("SELECT id, name FROM `table`")
result = cursor.fetchmany()
while result:
for id, name in result:
print id, name
result = cursor.fetchmany()
cursor.execute("SELECT id, name FROM `table`")
for id, name in cursor.fetchall():
print id, name
</code></pre>