gpt4 book ai didi

python - 遍历数据库表中所有行的最佳方法

转载 作者:IT老高 更新时间:2023-10-29 00:04:47 26 4
gpt4 key购买 nike

我经常编写小的 Python 脚本来遍历数据库表的所有行。例如,向所有订阅者发送一封电子邮件。

我是这样做的

conn = MySQLdb.connect(host = hst, user = usr, passwd = pw, db = db)
cursor = conn.cursor()
subscribers = cursor.execute("SELECT * FROM tbl_subscriber;")

for subscriber in subscribers:
...

conn.close()

我想知道是否有更好的方法来执行此操作,因为我的代码可能会将数千行加载到内存中。

我认为使用 LIMIT 可以做得更好。也许是这样的:

"SELECT * FROM tbl_subscriber LIMIT %d,%d;" % (actualLimit,steps)    

最好的方法是什么?你会怎么做?

最佳答案

除非您在其中有 BLOB,否则数千行应该不是问题。你知道吗?

另外,为什么要做类似

之类的事情,让自己和整个家庭蒙羞?
"SELECT * FROM tbl_subscriber LIMIT %d,%d;" % (actualLimit,steps)

什么时候游标会以一种避免 SQL 注入(inject)的方式为您进行替换?

c.execute("SELECT * FROM tbl_subscriber LIMIT %i,%i;", (actualLimit,steps))

关于python - 遍历数据库表中所有行的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3785294/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com