python 如何分批查询Oracle的数据?-灵析社区

劳资最帅

python 如何分批查询Oracle 就是比如数据库有几万数据第一次查询前100以此类推一直到查询到所有数据

阅读量:18

点赞量:0

问AI
import cx_Oracle # 创建数据库连接 dsn = cx_Oracle.makedsn('hostname', 'port', 'dbname') connection = cx_Oracle.connect('username', 'password', dsn) # 创建游标 cursor = connection.cursor() # 分页查询 batch_size = 100 page_num = 1 while True: start = (page_num - 1) * batch_size + 1 end = page_num * batch_size query = f""" SELECT * FROM ( SELECT t.*, ROWNUM r FROM (SELECT * FROM your_table ORDER BY some_column) t WHERE ROWNUM = {start} """ cursor.execute(query) rows = cursor.fetchall() if not rows: break for row in rows: print(row) page_num += 1 # 关闭游标和连接 cursor.close() connection.close()