Dzwebs.Net

撰写电脑技术杂文十余年

数据量较小的VFP数据表的备份与恢复源代码

Admin | 2008-7-6 22:47:30 | 被阅次数 | 8684

温馨提示!

如果未能解决您的问题,请点击搜索;登陆可复制文章,点击登陆

        今天晚上,受一同事之托,为其朋友制作一个简单的VFP小项目,其中,有一需求是这样的:

        针对数据库表里面某数据表进行备份恢复

        俺想想,小问题不可大动干戈,简单的问题莫复杂化,要不,做得太专业,同事的朋友的程序弄好了,他们的老师反而不相信其能力(估计俺的同事的朋友是个在校大学生,此君可能不学无术,这么简单的小项目都搞不定,还委托俺的同事找俺帮忙,要是俺是他的指导教师,非猛劈他不可;或者,此君乃一大美女,女生嘛,对于技术类型的方面,实在是步履维艰,俺乐意帮忙,俺经常有这嗜好!!!),因此,想出了个简单的法子来应付,此法可满足一般的数据量较小的数据表的备份与恢复,现将其拿出来,与大家共享;

        如下图,有四个数据表!

        上图中,带有_backup字样的为备份的数据表,其他的为数据源表,下面,俺将代码贴出来,与大家分析一下!

        仅以course.dbf源表的备份与恢复做说明,其他的都一样,就不再帖出来了!

        ①:备份代码:

        if messagebox("确定要对student表进行备份吗?",4+32,"系统提示")=6
            Use student
            Copy to student_backup
            use
            messagebox("已将student表备份至student_backup",0+64,"系统提示")
            Use student_backup
            browse
            close all
          endif

        代码说明,备份的原理很简单,无非就是使用Copy to student_backup 命令将已打开的student表整个的复制成为student_backup;

        ②:恢复代码

        if messagebox("确定要对student表进行恢复吗?",4+32,"系统提示")=6
           close all
           select 1
           use student
           zap
           close all
           select 1
           use student_backup
           Copy to array cou_array
           select 2
           use student
           Append from array cou_array
           close all
           messagebox("已将student_backup数据表恢复至student表",0+64,"系统提示")
           Use student
           browse
           close all
        endif

        代码说明:

        先打开源表use student,然后对其进行所有数据的zap物理删除;

        之后,再打开use student_backup备份表,通过Copy to array cou_array命令将里面的所有数据存储到临时数组cou_array里面;

        最后,通过Append from array cou_array命令将数组里面的所有数据追加到源表student里面!


该杂文来自: 数据库Sql,VFP,Access

上一篇:如何在VFP项目中创建菜单

下一篇:Visual FoxPro操作数据库之函数大全

网站备案号:

网站备案号:滇ICP备11001339号-7

版权属性:

Copyright 2007-2021-forever Inc. all Rights Reserved.

联系方式:

Email:dzwebs@126.com QQ:83539231 访问统计