如何读取xml文件并将数据写到sql server 2000中

解决方案 »

  1.   

    问得不明不白。到底是什么样的xml?数据库是什么样的结构?
      

  2.   


    uses msxml;   
        doc:IXMLDOMDocument;
        budgetdoc:ixmlDomNode;
        Rela:IxmlDOMNode;
        rs:ixmldomnodelist;//建立或取得XML结点
      doc := CoDOMDocument.create;
      doc.load('C:\temp.xml');
      budgetDoc := doc.selectSingleNode('BudgetDoc');
      rela := budgetdoc.SelectSingleNode('Relation'); //创建XML子结点  
      if not assigned(rela) then
      begin
        rela :=  doc.createElement('Relation');
        rela.setAttribute('BudgetId',0);
        rela.setAttribute('name','名称');
        budgetdoc.appendChild(rela); 
      end;//取子结点(序列)
      rs := rela.selectNodes('Rela[@BudgetId="2" and @TaskId="8"]');
      for i := 0 to rs.length -1 do
      begin
        s:= s + rs[i].attributes.getnameditem('NewRate').nodeValue;
      end;
      
      rela:=doc.ChildNodes.FindNode('DOMNode') as IxmlDOMNode;//移除子结点
        for i := rs.length -1 downto 1 do
          rela.removeChild(rs[i])//取父结点
        if assigned(anode.parentNode) and (Anode.parentNode.nodeName='Task') then
          result := Anode.parentNode;//取属性
      DOC.DocumentElement.Attributes['Name']
      rela.Attributes['Name']
      rs.Nodes[i].Attributes['Name']  Ajob:ixmldomnode;jobs:ixmldomNodeList;
      jobs := Ajob.selectNodes('RCJ[@Attrib="'+AAttrib+'"]')
      

  3.   

    就是按照格式读取xml中相应节点的值和属性,然后自己插入数据库即可哦。
    代码自己找吧,太多了。