目前,我查询我的数据库是这样的:是否可以通过sqlalchemy查询数据库?
for author in session.query(Author).filter(Author.queried==0).slice(0, 1000):
print "Processing:", author
# do stuff and commit later on
这意味着每1000名作家我必须重新启动脚本。
是否有可能使脚本无限运行(或只要有作者)?我的意思是说,如果有可能把
session.query(Author).filter(Author.queried==0).slice(0, 1000)
成某种发电机它产生接下来笔者对于这queried==0
是真的。
如果我没有提交,如果我的脚本崩溃了,那么每个东西都会丢失......所以最好用一个while循环包装实际的脚本,只要有''query'0 “真的,对吗? – Aufwind 2012-03-22 09:22:10
一个自然的提交地点就在你的循环完成之后。但是如果你有很多变化,那可能是一笔大交易,而且表现不佳。如果是这样,原始问题陈述中的切片实际上可能会更好。这取决于你正在做什么以及可能返回多少行。 – wberry 2012-03-22 16:47:09
作为更新postgres支持监听/通知事件api – morissette 2017-11-28 01:57:29