| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 3706 人关注过本帖
标题:vfp 中的COPY FILE TO 命令
只看楼主 加入收藏
asdf_123000
Rank: 4
等 级:业余侠客
威 望:1
帖 子:273
专家分:227
注 册:2012-12-20
收藏
得分:0 
版主的话总是对的,谢谢,终于可结帖了

本问题就是备份出的问题,10个表备份到另一个文件夹后,停电导致部分烂表,致使备份无效!

提出的问题:COPY FILE 表1 TO 表2  后,表2是正常的,但是停电后,表2坏了。
解决的方法:经过了很多测试,找到了一个解决的办法。
            就是程序语句拷贝后,要操作一下Windows文件系统,停电也不烂表了。
            命令 COPY  TO 后,可能是Windows没有自动关闭文件系统。
2021-12-22 16:17
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10608
专家分:43190
注 册:2014-5-20
收藏
得分:0 
备份过程是否成功应该要有记录,下次启动可以提醒重做
2021-12-22 19:05
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10608
专家分:43190
注 册:2014-5-20
收藏
得分:0 
重要文件备份完成后最好做一下校对
2021-12-22 19:08
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10608
专家分:43190
注 册:2014-5-20
收藏
得分:0 
以下是引用asdf_123000在2021-12-22 16:17:25的发言:

提出的问题:COPY FILE 表1 TO 表2  后,表2是正常的,但是停电后,表2坏了。
解决的方法:经过了很多测试,找到了一个解决的办法。
            就是程序语句拷贝后,要操作一下Windows文件系统,停电也不烂表了。
            命令 COPY  TO 后,可能是Windows没有自动关闭文件系统。

这样看来VFP的 COPY FILE 可能是调用WinAPI的 CreateFile、ReadFile、WriteFile、....
通过缓冲来进行I/O操作,缓存正式存盘还需时间,尤其是有使用了文件安全监控。
试试VFP的FLUSH命令看有无效果,如:
FLUSH 表2.dbf FORCE
觉得开关一下表2应该也可以:
USE 表2
USE




2021-12-23 09:12
asdf_123000
Rank: 4
等 级:业余侠客
威 望:1
帖 子:273
专家分:227
注 册:2012-12-20
收藏
得分:0 
谢谢版主提醒!
具体备份,退出就自动备份了,是成功的。
这是中间增加的数据,想防止停电而丢失所做的备份。中间每次变动数据备份是成功了,但不退出系统,备份成功的表仍然烂表,实际上是不成功的。
找到的方法是,打开Windows文件系统,手工对这个中间备份文件夹复制一个。
那么再发生停电,中间备份文件不烂了,但复制的这个文件夹烂表。不知什么程序没有关闭造成的。
2021-12-23 09:27
asdf_123000
Rank: 4
等 级:业余侠客
威 望:1
帖 子:273
专家分:227
注 册:2012-12-20
收藏
得分:0 
以下是引用吹水佬在2021-12-23 09:12:37的发言:


这样看来VFP的 COPY FILE 可能是调用WinAPI的 CreateFile、ReadFile、WriteFile、....
通过缓冲来进行I/O操作,缓存正式存盘还需时间,尤其是有使用了文件安全监控。
试试VFP的FLUSH命令看有无效果,如:
FLUSH 表2.dbf FORCE
觉得开关一下表2应该也可以:
USE 表2
USE

试过了,
1、FLUSH对当前工作区的表有保护,对另存的中间备份文件夹无效,一样的烂表。
2、开关一下表,即使是指定了中间备份文件夹路径,仍然烂里面的表。
太弦了,只有手动复制还勉强可行
2021-12-23 11:43
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10608
专家分:43190
注 册:2014-5-20
收藏
得分:0 
回复 16楼 asdf_123000
估计是操作系统环境的问题
另找台机试试,最好是裸机(只装windows),排除其他应用干扰的可能
2021-12-23 11:52
heibaochen
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2022-7-23
收藏
得分:0 
[quote]以下是引用asdf_123000在2021-12-22 14:51:08的发言:

当用户很多的情况下,总有用户会遇到停电。

我觉得烂表还是小事,异常断电有很大概率会损坏硬盘,那时候咋得弄?听吹版主的吧,用UPS!
2023-06-09 18:40
快速回复:vfp 中的COPY FILE TO 命令
数据加载中...
 
   



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

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