规范的方法是使用内置的游标迭代器。
curs.execute('select * from people')
for row in curs:
print row
您可以使用fetchall()一次获取所有行。
for row in curs.fetchall():
print row
使用它可以很方便地创建一个包含返回值的Python列表:
curs.execute('select first_name from people')
names = [row[0] for row in curs.fetchall()]
这对于较小的结果集很有用,但如果结果集很大,则会产生不良副作用。
您必须等待整个结果集返回到客户端进程。
您可能会在客户端占用大量内存来保存构建列表。
Python可能需要一段时间来构建和解构您将立即丢弃的列表。
如果您知道结果集中返回了一行,则可以调用fetchone()以获取单行。
curs.execute('select max(x) from t') maxValue = curs.fetchone()[0] 最后,您可以遍历结果集,一次获取一行。通常,使用迭代器进行此操作没有特别的优势。
row = curs.fetchone() while row: print row row = curs.fetchone()
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。