1
我通过tkinter按钮单击来调用这些函数。因此,一旦提交完成,如果我需要恢复的变化。我打电话做回退,但它不是恢复的变化是否有可能在python提交后回滚sqlite3更改
def insert(_id,name,phone):
conn = sqlite3.connect(db)
print ("Opened database successfully");
print (name,phone)
conn.execute("INSERT INTO VARUN (ID,NAME,PHONE) \
VALUES (?,?,?)",(_id,name,phone));
conn.commit()
print ("New record(s)" , name," has just been added to the database");
conn.close()
def rollback():
conn = sqlite3.connect(db)
conn.rollback()
print ("\n changes reverted")
conn.close()
您可能想查看[ACID合规性](http://www.fredosaurus.com/notes-db/transactions/acid.html)的含义。提交和回滚不是数据库状态的“时间点”记录。它们控制单个*事务*,它们代表按顺序执行的一组查询。特别是,“提交”意味着“使所有数据更改最终并可用于所有未来交易”。 – jpmc26