首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > VFP >

【征集方案】怎么解决因错误关机导致表文件损坏的有关问题

2012-09-17 
【征集方案】如何解决因异常关机导致表文件损坏的问题系统运行中,异常断电,导致DBF文件损坏。这是一个系统状

【征集方案】如何解决因异常关机导致表文件损坏的问题
系统运行中,异常断电,导致DBF文件损坏。这是一个系统状态表,随系统运行一直打开。该如何让系统自行恢复?

我计划是这样的:

1、系统表为sys,同时有一个备份,例如:sys1
2、系统启动时,若SYS表损坏,则将SYS1拷贝为SYS
3、系统启动后,若该表发生设置参数变化,则同时更新备份表
copy to sys1


其他有没有更好的方案?


[解决办法]
一个古老的 FAQ 了
只要有添\删\改操作,立即执行强制写盘操作,只要表不是特别大,一般都够了

if append\replace\delete\insert\update sys
flush in sys force

试试还会损坏这个表吗?
用你的方法作为辅助防范方案

[解决办法]
没有,只要对表有修改,要及时“真正”的存盘(Flush 命令 方法见1楼),基本就不会有坏表了。
[解决办法]
这情况我也是,就是只打开表,当程序意外挂了,就有表坏掉了,只能备份顶上!习惯了!
[解决办法]
对于因断电和对方突然关机造成的表损坏,其修复实际上是很简单的。在vfp8以上版本提供有SET TABLEVALIDATE TO 命令。其用法如下:
SET TABLEVALIDATE TO [nLevel]nLevel 指定表有效性级别。系统默认值为3当因以上原因出现坏表时,设置SET TABLEVALIDATE TO 0就可打开坏表。这时,只要以独占方式打开坏表,随便加个记录,执行存盘,即可修复坏表。该方法经本人多次测试,毫无问题。
[解决办法]
是系统信息表,仅一条记录,还不如直接在程序中建个数组赋值,再也不用担心表损坏了。

热点排行