各位好,谁有将满足条件的数据库表转换为xml格式的代码?
如从sql server2000取出满足条件的记录有100条:
select id,name,address,post_code from user_table where name like '%汤%'请问,怎么将这100条记录转换成.xml文件

解决方案 »

  1.   

    用Delphi自带的TXMLDocument就可以了。
    var
      FRootNode,OptNode, RowNode: IXMLNode;
    begin
      ...
      FXMLDoc := TXMLDocument.Create(Self);
      FXMLDoc.DOMVendor := GetDOMVendor('Xerces XML');
      FXMLDoc.Active := True;
      FXMLDoc.Encoding := 'UTF-8';
      FRootNode := FXMLDoc.AddChild('mydataset');  OptNode := FRootNode.AddChild('MyDataSet');  with DataSet do
      begin
        while not eof do
        begin
          RowNode := OptNode.AddChild('GivetYourRecordAName');
          RowNode.Attributes['Field1'] := FieldByName('Field1').AsString;
          RowNode.Attributes['Field2'] := IntToStr(FieldByName('Field2').AsInteger);
          RowNode.Attributes['Field3'] := FormateDateTime( 'yyyy-mm-dd',FieldByName('Field3').AsDateTime);
          Next;
        end;
      end;  FXMLDoc.SaveToFile(SaveDir + '\' + XMLFileName);
      FXMLDoc.Active := False;
      FreeAndNil(FXMLDoc);
      ...
    end;
      

  2.   

    TClientDataSet.savetofile太方便了,呵呵