求救:如何在delphi7中实现将SQLServer2000中的多个表导入到一个xml文件,并能逆向导回到SQLServer数据库中

解决方案 »

  1.   

    实际上定义一个好的XML文件就可以了.
    <Root>
      <Table name="表1">
      <FieldArray f1="aa" f2="bb" f3="cc"/>
      <Recoed f1="a1" f2="a2" f3="a3"/>
      <Recoed f1="b1" f2="b2" f3="b3"/>
      ...
      </Table>
      <Table name="表2">
      <FieldArray f1="AA" f2="BB" f3="BB"/>
      <Recoed f1="A1" f2="A2" f3="A3"/>
      <Recoed f1="B1" f2="B2" f3="B3"/>
      ...
      </Table>
    </Root>用DOMXML很容易获取和写入数据.
      

  2.   

    用AdoQuery直接保存为多个Xml文件,然后再合并成一个Xml,中间可自己定义分隔符。逆向导入SqlServer时,先拆分Xml,然后再导入。
      

  3.   

    加入一個OpenDialog1控件如下:
    procedure TPcyt_Frm.RzBitBtn4Click(Sender: TObject);
    var
      cfile:string;
    begin
      OpenDialog1.Execute;
      cfile:=OpenDialog1.FileName;
      if cfile='' then
      else
      begin
        dxDBGrid1.SaveToXML(cfile+'.XML',False);
        MessageBox(0,'電腦軟體數據信息導出成功!','恭喜你',MB_OK + MB_ICONQUESTION);
      end;
    end;
      

  4.   

    逆向導入
     把XML文件读出来,当作字符串处理,然后把它存到数据库里,如果还要对该XML文件内的信息进行修改,则先把读出来的字符串转换成一棵DOM树,修改后再把DOM树转换成字符串,再把字符串存到数据库(自己没试过,不知道这样可不可以满足你的要求)。 
     自己在網上搜下應該有!