求助:利用 python,如何高效的将 oracle 数据库查询结果保存到 mssql 数据库?

利用python,连接oracle数据库、mssql数据库,如何高效的将oracle数据库查询结果保存到mssql 数据库?
我的做法是利用pandas.DataFrame.to_sql,但是效率太低,如何做更高效?
使用pyODBC的fast_executemany加速pandas.DataFrame.to_sql,出现错误 :“(pyodbc.error) [hy090][misrosoft][odbc driver 13 for sql server] 无效的字符串或缓冲区长度(0)(sqlexecute)”

讨论数量: 2
Jason990420
3年前 评论
fnfhv (楼主) 3年前
Jason990420 (作者) 3年前

@Jason990420 ,我连接数据库:conn_mssql=create_engine('mssql+pyodbc://sa:password@mydb?driver=ODBC Driver 17 for SQL Server',encoding='utf8',fast_executemany=True), 写入数据库:data_s.to_sql(row[1],conn_mssql,if_exists='replace',index=False,dtype = outputdict,chunksize=None) 不加fast_execute = True时,能正常运行,但时效率不高,如按上面加上fast_execute = True,则在写入数据库时出现错误:无效的字符串或缓冲区长度

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!