标题:求助:数据表头损坏,怎么修复
只看楼主
XUFN
Rank: 2
等 级:论坛游民
威 望:4
帖 子:35
专家分:28
注 册:2009-1-18
结帖率:100%
已结贴  问题点数:20 回复次数:6 
求助:数据表头损坏,怎么修复
帖子列表太多,不知道之前有没有人问过类似问题,由于电脑干活时间死了,正在作业的应用程序强行退出,结果后面再运行时,有张表打不开了,能有办法恢复吗?好像有个SET命令是可以的,但我忘记了,先谢谢大侠了
Data_CL.rar (34.64 KB)
搜索更多相关主题的帖子: 损坏 打不开 办法 数据表 SET 
2021-08-03 12:53
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:10 
可能是 SET TABLEVALIDATE TO 命令
或者复制与表同名的*.BAK文件试试

坚守VFP最后的阵地
2021-08-03 13:25
厨师王德榜
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:183
帖 子:942
专家分:4724
注 册:2013-2-16
得分:10 
看看是不是这些记录?
Data_CL修复.rar (69.17 KB)
2021-08-03 13:26
XUFN
Rank: 2
等 级:论坛游民
威 望:4
帖 子:35
专家分:28
注 册:2009-1-18
得分:0 
楼上的太厉害啦,谢谢谢谢!

输入

SET TABLEVALIDATE TO 0

然后就可以打开了
2021-08-03 13:35
XUFN
Rank: 2
等 级:论坛游民
威 望:4
帖 子:35
专家分:28
注 册:2009-1-18
得分:0 
也谢谢~厨师王德榜~
2021-08-03 13:36
kimhoo
Rank: 2
等 级:论坛游民
威 望:3
帖 子:59
专家分:37
注 册:2017-5-31
得分:0 
因突然断电或不明原因自动重启后,打开某.dbf文件时,如
USE h:\gsdbf\stock20190429.dbf EXCLUSIVE
提示∶'h∶\qsdbf\stock20190429.dbf'已损坏,该表在再次使用前必须经过修复

用的是Foxpro 9.0 SP2可在命令窗口键入∶

CLOSE ALL
SET TABLEVALIDATE TO 0 &&不进行验证
USE h\qsdbf\stock20190429.dbf
COPY TO h\qsdbf\stock20200215.dbf &&可见自动复制的进度显示
SET TABLEVALIDATE TO
2021-08-15 21:09
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
也可以试试修改实际记录数,找回丢失数据记录。
程序代码:
cDBF = FILETOSTR("data_CL.dbf")
nRecHead  = CTOBIN(SUBSTR(cDBF,9,2),"RS2")+1
nRecSize  = CTOBIN(SUBSTR(cDBF,11,2),"RS2")
nRecCount = INT((LEN(SUBSTR(cDBF,nRecHead))-1)/nRecSize)
cDBF = STUFF(cDBF,5,4,BINTOC(nRecCount,"RS4"))
STRTOFILE(cDBF,"data_CL修复.dbf") 
2021-08-16 11:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-506386-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.055067 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved