vfp中如何将两个数据库合并

时间:2022-09-15 23:15:32
各位朋友:
    我在多台电脑上建了同一数据库表,分别输入了数据,现在如何将数据合并到同一电脑上,例如
A B两台电脑上各输入了部分学生记录,现在如何导入到一台电脑上作为总数据库

7 个解决方案

#1



OPEN DATABASE 数据库名
USE 学生表A &&  打开学生表1
APPEND FROM 学生表B

#2


多谢,关键是要通过编程先将B上的数据复制到U盘,再到A电脑上从U盘中导入,如何编程实现?

#3


操作人员不懂数据库操作,所以我需要编写程序来实现这个过程,多谢了

#4


引用 2 楼 hz7217809 的回复:
多谢,关键是要通过编程先将B上的数据复制到U盘,再到A电脑上从U盘中导入,如何编程实现?

判断哪个盘符是U盘,再复制、导入
判断哪个盘符是U盘:
  public DriName
              mydri =' '
              Declare INTEGER GetLogicalDriveStrings IN kernel32 INTEGE nBufferLength,;
                     STRING @ lpBuffer
              Declare INTEGER GetDriveType IN kernel32 STRING nDrive
              AIIDrive=replicate(' ',108)
              =GetLogicalDriveStrings(len(AIIDrive),@AIIDrive)
              AIIDrive=allt(AIIDrive)
              for i=1 to len(AIIDrive)/4
                     DriNameTmp=substr(AIIDrive,i*4-3,2)
                     NDType=GetDriveType(DriNameTmp)
                     do case
                            case NDType=2 and (DriNameTmp='A:' or DriNameTmp='B:' or DriNameTmp='a:' ;
                                          or DriNameTmp='b:')
                                   DriType='软驱'
                            case NDType=2 and (DriNameTmp<>'A:' and DriNameTmp<>'B:' and ;
                                          DriNameTmp<>'a:' and DriNameTmp<>'b:')
                                   DriType='U盘'
                                   mydri=mydri+','+DriNameTmp+' '+DriType
                            case NDType=3
                                   DriType='硬盘'
                            case NDType=5
                                DriType='光驱'
                     endc       
                    * mydri=mydri+','+DriNameTmp+' '+DriType
              endf
              mydri = righ(mydri,len(mydri)-1)
              WAIT WINDOW mydri

#5


感觉还是手工拷贝到优盘的方法更可取。

#6


导出时用 putfile 函数打开另存为对话框
导入时用 getfile 函数打开打开文件对话框

作为软件,这样正规些

#7


简单问题复杂化了

#1



OPEN DATABASE 数据库名
USE 学生表A &&  打开学生表1
APPEND FROM 学生表B

#2


多谢,关键是要通过编程先将B上的数据复制到U盘,再到A电脑上从U盘中导入,如何编程实现?

#3


操作人员不懂数据库操作,所以我需要编写程序来实现这个过程,多谢了

#4


引用 2 楼 hz7217809 的回复:
多谢,关键是要通过编程先将B上的数据复制到U盘,再到A电脑上从U盘中导入,如何编程实现?

判断哪个盘符是U盘,再复制、导入
判断哪个盘符是U盘:
  public DriName
              mydri =' '
              Declare INTEGER GetLogicalDriveStrings IN kernel32 INTEGE nBufferLength,;
                     STRING @ lpBuffer
              Declare INTEGER GetDriveType IN kernel32 STRING nDrive
              AIIDrive=replicate(' ',108)
              =GetLogicalDriveStrings(len(AIIDrive),@AIIDrive)
              AIIDrive=allt(AIIDrive)
              for i=1 to len(AIIDrive)/4
                     DriNameTmp=substr(AIIDrive,i*4-3,2)
                     NDType=GetDriveType(DriNameTmp)
                     do case
                            case NDType=2 and (DriNameTmp='A:' or DriNameTmp='B:' or DriNameTmp='a:' ;
                                          or DriNameTmp='b:')
                                   DriType='软驱'
                            case NDType=2 and (DriNameTmp<>'A:' and DriNameTmp<>'B:' and ;
                                          DriNameTmp<>'a:' and DriNameTmp<>'b:')
                                   DriType='U盘'
                                   mydri=mydri+','+DriNameTmp+' '+DriType
                            case NDType=3
                                   DriType='硬盘'
                            case NDType=5
                                DriType='光驱'
                     endc       
                    * mydri=mydri+','+DriNameTmp+' '+DriType
              endf
              mydri = righ(mydri,len(mydri)-1)
              WAIT WINDOW mydri

#5


感觉还是手工拷贝到优盘的方法更可取。

#6


导出时用 putfile 函数打开另存为对话框
导入时用 getfile 函数打开打开文件对话框

作为软件,这样正规些

#7


简单问题复杂化了