主题:悲剧啊,在局域网内的DBF表内录入数据,没保存全丢了
coffeenight
[专家分:230] 发布于 2011-02-10 21:07:00
做了个表单,大意是向局域网内的另一台机子上的DBF表上录入数据
测试都很正常。
下午在使用的过程中,VFP程序无响应,没细想就用任务管理器把VFP程序关掉了。
再重新打开程序发现之前2个小时录入的数据全部丢失了!!!
之后我做了个测试,用该表单向局域网内的DBF表录入几个数据,然后用任务管理器强行关闭VFP。发现数据并没有保存到局域网的DBF表中。
用该表单向本机的DBF表录入几个数据,然后用任务管理器强行关闭VFP。发现数据成功保存到本机的DBF表中。
VFP录入数据应该是即时录入即时保存的啊,为什么会有如此的区别???
另外请教,该如何避免这样的问题再出现?非常感谢!
最后更新于:2011-02-10 21:10:00
回复列表 (共4个回复)
沙发
wzxc [专家分:9440] 发布于 2011-02-10 22:02:00
即使在本地,我遇到过突然断电而造成已录入数据未存盘现象。只好用FLUSH 命令强行存盘。网络没试过。你可以试试看能否行得通。
另,摘自帮助文档:
在下列情况下,Visual FoxPro 自动保存所做的修改到磁盘:
1、用 USE、CLOSE ALL、或 CLOSE DATABASES 命令关闭表。只有被关闭文件的相关信息存入磁盘。
2、[u][i]对记录或文件解锁。只有被解锁的记录或文件的信息才存入磁盘。 [/i][/u]不知道你如何加锁解锁的,参照以上试试看如何。
板凳
coffeenight [专家分:230] 发布于 2011-02-10 23:38:00
[quote]即使在本地,我遇到过突然断电而造成已录入数据未存盘现象。只好用FLUSH 命令强行存盘。网络没试过。你可以试试看能否行得通。
另,摘自帮助文档:
在下列情况下,Visual FoxPro 自动保存所做的修改到磁盘:
1、用 USE、CLOSE ALL、或 CLOSE DATABASES 命令关闭表。只有被关闭文件的相关信息存入磁盘。
2、[u][i]对记录或文件解锁。只有被解锁的记录或文件的信息才存入磁盘。 [/i][/u]不知道你如何加锁解锁的,参照以上试试看如何。
[/quote]
非常感谢! 您是说你遇到突然断电后,是用 FLUSH 命令补救吗,还是用FLUSH防范下次出现这种类似情况?
3 楼
moz [专家分:37620] 发布于 2011-02-12 23:34:00
局域网中共享使用的SQL写入,从来没出现过这种情况,你是否使用了事务?
4 楼
coffeenight [专家分:230] 发布于 2011-02-15 11:27:00
[quote]局域网中共享使用的SQL写入,从来没出现过这种情况,你是否使用了事务?[/quote]
我是使用 repl with 写入
事务???不懂是啥,应该没有使用。
我来回复