Python3 - 有没有一种方法可以逐行遍历一个非常大的SQlite表,而不需要将整个表加载到本地内存中?
- 论坛
- Python3 - 有没有一种方法可以逐行遍历一个非常大的SQlite表,而不需要将整个表加载到本地内存中?
14 浏览
Python3 - 有没有一种方法可以逐行遍历一个非常大的SQlite表,而不需要将整个表加载到本地内存中?
我有一个非常大的表格,有250,000+行,其中许多行包含一个大的文本块。目前表格大小为2.7GB,预计至少会增长十倍。我需要对表格的每一行执行特定的Python操作,但每次只需要访问一行。
目前我的代码大致如下:
c.execute('SELECT * FROM big_table') table = c.fetchall() for row in table: do_stuff_with_row
当表格变得比我可用的内存还大时,这个方法无法正常工作,Python在运行时会卡住。有没有更好(更节省内存)的方法可以逐行迭代整个表格?