如果是数据库损坏的问题
那就只能尽量判断出来。
每次保存数据时,保存完数据后,写一个日志文件,
关闭数据连接,然后使用 复制文件 的方法 备份一次数据库,再写一个日志文件。
当程序开始运行时,查检日志文件,如果 保存了数据,然后又备份了,也就是 日志里的记录相同,那么直接使用数据库。
当日志不相同时, 把备份数据库还原到主数据库中,再使用数据库。
当打开主数据库时,出现错误,这个可以检测一下,如打开数据表,然后读每一条记录的第一个字段,如果报错,就是数据库错误。
这时,仍然还愿备份数据库。
为了安全,备份数据库可以设为5个,分别是最后5次的数据库。
这是我想到的。
如果你懂数据库文件结构,或者打算动手改进数据保存文件,那么你可以直接二进制修复数据库。
--------------------------
如果数据,分小时,保存到 TXT 文件中,而不是数据库。这种情况下就不存在因停电而导致数据库出错。
然后一个专门程序,负责把这个TXT里的文件全部转到 数据库里去分析。
建议使用这种方法。以前看过一个题目,从题目我得出的另一个结果是:电信部门的计费系统也有些是 写 TXT 的,然后再导入数据库的。可能现在没有了。