我有一个使用SQLAlchemy Core将信息推送到SQLite数据库的程序。我没有使用自动提交事务,而是控制提交的速率,如下所示:
engine = create_engine("database")
connection = engine.connect()
transaction = connection.begin()
for index in range(0, num):
connection.execute(EXAMPLE_INSERT)
transaction.commit()
一旦完成,我正在检查数据库修改时间,以便稍后检查数据库是否已被修改,我将使用以下内容进行修改:
time.ctime(os.path.getmtime(full_path))
正在发生的问题是,在完成所有事务和提交后,磁盘上的数据库似乎正在被修改,这使我相信在某些其他进程中某些时候发生磁盘推送比提交。
这是正确的,如果是这样的话,无论如何都知道所有更改何时被推送到磁盘以便我可以获得正确的修改时间?