回答

收藏

Pandas DataFrame.to_sql()函数是否需要后续?commit()?

技术问答 技术问答 214 人阅读 | 0 人回复 | 2023-09-14

to_sql()适用于DataFrame对象的Pandas函数文档(请参考to_sql()文件)未指出commit()需要(或建议)调用连接以保持更新。
6 ?  b7 i* ?7 I" q假设这个我可以放心DataFrame.to_sql('table_name',con)变更(例如将始终自动提交con.commit()吗?
* }4 }. h1 S4 d8 J                                                               
8 E* I- Y; `$ i9 ^  B, X- b2 V    解决方案:                                                               
/ ], V  x4 P; V: C: b/ d4 r: _                                                                是的,它将在一天结束时自动提交。/ x2 U+ T8 K1 ~! R' J
熊猫调用SQLAlchemy方法executemany(用于SQL Alchemy连接):0 V1 t# j1 X; `6 n9 W
conn.executemany(self.insert_statement(),data_list)对于SQLite连接:% ]  g1 }: q' }) ~+ g
def run_transaction(self):    cur = self.con.cursor()    try:        yield cur        self.con.commit()    except:        self.con.rollback()        raise    finally:        cur.close()并且由于SQL 炼金术文件executemany的问题commit末
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则