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

Does the Pandas DataFrame.to_sql() function require a subsequent commit()?

可用于 DataFrame 对象的 Pandas 函数 to_sql() 的文档(参见 to_sql() documentation)没有说明 commit() 调用连接需要(或推荐)以坚持更新。

我可以安全地假设 DataFrame.to_sql('table_name', con) 将始终自动提交更改(如:con.commit())吗?

是的,一天结束时它会自动提交。

Pandas calls SQLAlchemy method executemany(对于 SQL 炼金术连接):

conn.executemany(self.insert_statement(), data_list)

for SQLite connection:

def run_transaction(self):
    cur = self.con.cursor()
    try:
        yield cur
        self.con.commit()
    except:
        self.con.rollback()
        raise
    finally:
        cur.close()

并且由于 SQL Alchemy docs executemany 问题 commit 最后