cx_Oracle MemoryError当我调用cursor.executemany()
问题描述:
cx_Oracle MemoryError当我调用cursor.executemany()时。这个错误只发生在数据很大时。我用一些数据试了一下,结果很好。请,我是新的python和一般编程。谢谢你们......cx_Oracle MemoryError当我调用cursor.executemany()
import string, cx_Oracle, time
startscript = time.time()
ora_conn = cx_Oracle.connect("")
ora_cursor = ora_conn.cursor()
ora_cursor.execute("truncate table table")
ora_cursor.execute("""SELECT * FROM schema.tableA""")
ResultSet_Py_List = []
for column1, column2, column3 in ora_cursor:
try:
ResultSet_Py_List.append((column1, column2, column3))
except AttributeError:
pass
ora_cursor.prepare("""INSERT INTO schema.TableA (column1, column2, column3)
VALUES (:column1, :column2, :column3)""")
ora_cursor.executemany(None, ResultSet_Py_List)
ora_conn.commit()
答
解决了。我发现它与记忆有关。我安装了一个64位的Python和Oracle客户端后,我发现,32位只能使用4个千兆字节的RAM