我有一个SQLite文件,可以很容易1GB(可能会变成10GB)。我想为我的桌面应用程序(C++)模拟“另存为”和自动保存功能,类似于Office Word。 在我看来,每次我想备份时都要制作整个文件的副本是不切实际的。SQLlite for“另存为”和自动保存功能的大文件
我刚开始调查SAVEPOINT。这是处理这个问题的方法吗?但是我不清楚保存点是否允许我查询我在保存点之间插入的内容,直到我提交/发布。
我将不胜感激反馈。
另外,退后一步,我在思考这种另存为/自动保存机制是不是一个好主意。我目前正在将每个SQL命令立即保存到文件中(例如,将用户文本保存到表中的注释字段中)。我在应用程序中实现了撤销/重做功能。任何人用大型的sqlite文件制作桌面应用程序?
SAVEPOINTS用于交易。所以你可以回滚一部分交易,而不是全部。而且你真的不希望在应用程序使用期间保持事务处于打开状态(即使它是单用户)。 – MatBailie 2012-04-04 08:40:19
感谢您的评论。我是否不想让交易开放,因为1)电力故障不会保留这些更改?和2)我无法查询一个打开的交易内的变化? – jobobo 2012-04-04 18:19:40