当前位置: 代码迷 >> Sql Server >> 高分解决一个简单sql server 2000的for xml语句有关问题(急)
  详细解决方案

高分解决一个简单sql server 2000的for xml语句有关问题(急)

热度:71   发布时间:2016-04-27 14:45:10.0
高分解决一个简单sql server 2000的for xml语句问题(急)
我写了一个sql server2000的脚本,最后用的是一个for xml,elements 出来的结果如下:<sksj>20100201</sksj><nsrsbh>4564</nsrsbh><xh>1</xh>
这种标签紧密挨着的格式,现在我想变成以下这种:

<sksj>20100201</sksj>
<nsrsbh>4564</nsrsbh>
<xh>1</xh>
在文本格式中,每一个标签完了之后,就换行,应该怎么做?


------解决方案--------------------
SQL code
[Quote=引用:]我写了一个sql server2000的脚本,最后用的是一个for xml,elements 出来的结果如下:<sksj>20100201</sksj><nsrsbh>4564</nsrsbh><xh>1</xh>这种标签紧密挨着的格式,现在我想变成以下这种:<sksj>20100201</sksj><nsrsbh>4564</nsrsbh><xh>1</xh>在文本格式中……[/Quote]你这个应该到程序端去处理了参考一下:xmlElement = xmlDoc.CreateElement(item.NodeTag.Substring(item.NodeTag.LastIndexOf(",") + 1));                                                                                                         if (item.Format.IndexOf("$ItemTag$=\"$ItemValue$\"") > -1)                {                     xmlElement.SetAttribute(item.ItemTag.Trim(), item.Value.Trim());                }                else if (item.Format.IndexOf("key=\"$ItemTag$\" value=\"$ItemValue$\"") > -1)                {                    xmlElement.SetAttribute("key", item.ItemTag.Trim());                    xmlElement.SetAttribute("value", item.Value.Trim());                 }                else if (item.Format.IndexOf("name=\"$ItemTag$\" value=\"$ItemValue$\"") > -1)                {                    xmlElement.SetAttribute("name", item.ItemTag.Trim());                    xmlElement.SetAttribute("value", item.Value.Trim());                 }                node.AppendChild(xmlElement);
  相关解决方案