程序结束后DB不会持久化

时间:2011-09-14 03:27:13

标签: python database sqlite terminal sqlalchemy

我使用SQLAlchemy创建了一个简单的数据库。通过引擎连接到它后,定义表和类,然后创建一个用户,它输出用户正常。当程序结束并且我尝试通过Python提示访问数据库(导入SQLAlchemy,创建新引擎等)时,以前的用户就不见了。

有人可以解释这里发生了什么,以及先前设置的.db文件中有什么(如果有的话)?

1 个答案:

答案 0 :(得分:4)

你在发布之前是否在连接上调用.commit()?

默认情况下,Python SQLite模块不使用AUTOCOMMIT模式,除非您使用DDL语句完成会话,否则它将被回滚。

更多信息:http://docs.python.org/library/sqlite3.html#controlling-transactions