当前位置:编程学习 > C#/ASP.NET >>

请教数据库表怎样生成XML文件,急!!!

谁能指导一下SQL   SERVER里的一个数据库数据库oilerp里的一个表DeptMember为一个部门表,字段有关键字(InputID),部门名(DepartmentName),部门等级(DepartmentLever),父部门ID(ParentID),请问该怎样生成一个XML文件啊,生成了这个我就可以直接套用已经有的程序代码了啊 --------------------编程问答-------------------- 我知道一个查询可以查出XML格式的SQL语句
SELECT * FROM DeptMember FOR XML AUTO
--------------------编程问答-------------------- DataSet.WriteXml Method  --------------------编程问答-------------------- SELECT * FROM DeptMember FOR XML AUTO 这个比较好

1 ,2楼的方法都不错 --------------------编程问答-------------------- 查一下语法 
   好象还可以在sql里面指定 标签名 或者为属性

  也可以查询出来了通过程序去写一个xml文件 --------------------编程问答--------------------
引用 3 楼 qiqi1983731 的回复:
SELECT * FROM DeptMember FOR XML AUTO 这个比较好 

1 ,2楼的方法都不错

顶 --------------------编程问答--------------------       
取出数据填充datatable,再用WriteXml()方法
  DataTable dt =GetDataTalbe();//获取一个datatable
        dt.TableName = "dtname";
        System.IO.StringWriter writer = new System.IO.StringWriter();
        dt.WriteXml(writer);


得到如下格式的XML

  <?xml version="1.0" encoding="UTF-8" ?> 
- <DocumentElement>
- <Menu>
  <ID>1</ID> 
  <type>1</type> 
  <caption>根菜单一</caption> 
  <updateTime>2008-10-25T22:28:06.92+08:00</updateTime> 
  </Menu>
- <Menu>
  <ID>9</ID> 
  <type>1</type> 
  <caption>根菜单二</caption> 
  <updateTime>2008-10-26T00:01:49.25+08:00</updateTime> 
  </Menu>
- <Menu>
- </DocumentElement>


或者直接用

SELECT * FROM DeptMember FOR XML AUTO 

调用如下方法输出查询的字符串
  
 private void ResponseXML(System.Text.StringBuilder xmlnode)
    {
        System.Web.HttpContext.Current.Response.Clear();
        System.Web.HttpContext.Current.Response.ContentType = "Text/XML";
        System.Web.HttpContext.Current.Response.Expires = 0;
        System.Web.HttpContext.Current.Response.Cache.SetNoStore();
        System.Web.HttpContext.Current.Response.Write(xmlnode.ToString());
        System.Web.HttpContext.Current.Response.End();
    }


   protected void Page_Load(object sender, EventArgs e)
    {
        System.Text.StringBuilder xmlNode = new System.Text.StringBuilder();
        xmlNode.Append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
            xmlNode.Append("<r>");
            xmlNode.Append(result);
            xmlNode.Append("</r>");
            ResponseXML(xmlNode);
    }


得到如下形式XML文档
  
<?xml version="1.0" encoding="UTF-8" ?> 
- <r>
  <examList ID="3" examGrade="2006" examType="文理" examDate="200610" examName="枝江一中2006-2007学年度高一十月考试" examBase="000000" teaScoreLocked="0" isOnline="1" teaECLocked="0" averageLocked="0" sectionLocked="0" estiStdID="0" sum9="900" chineseScore="150" mathScore="150" englishScore="150" physicsScore="100" chemistryScore="100" biologyScore="100" politicsScore="50" historyScore="50" geographyScore="50" score6lScore="600" score6wScore="600" score3Score="450" score3lScore="300" score3wScore="150" /> 
-</r>
--------------------编程问答-------------------- 感谢大家 --------------------编程问答--------------------  好东西~ --------------------编程问答-------------------- 没将XML存到数据库中,只是以文件的形式存储,关于C#操作XML的方法可以参考这个http://blog.csdn.net/mengxj85/archive/2008/09/30/3005557.aspx
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,