SQL XML 向根添加元素

SQL XML add elements to root(SQL XML 向根添加元素)
本文介绍了SQL XML 向根添加元素的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个通过 SQL 生成的 XML,根如下所示:

I have an XML that is being generated via SQL and the root looks like this:

<ArrayOfKeyValueOfstringPunchListCellModel84zsBx89 
      ns1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">

我希望它看起来像这样:

I want it to look like so:

<ArrayOfKeyValueOfstringPunchListCellModel84zsBx89 
      xmlns:i="http://www.w3.org/2001/XMLSchema-instance" 
      xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">

这是我的 SQL 代码:

Here is my SQL code:

DECLARE @persons XML = (
SELECT(
blah blah blah
)FOR XML PATH(''), ROOT('ArrayOfKeyValueOfstringPunchListCellModel84zsBx89'))
set @persons.modify('insert ( attribute ns1 {"http://schemas.microsoft.com/2003/10/Serialization/Arrays"}) into (/ArrayOfKeyValueOfstringPunchListCellModel84zsBx89)[1]')
    SELECT @persons

它返回第一个根,我如何让它像我展示的第二个根一样返回?

and it returns the first root, how do I get it return like the second root I showed?

推荐答案

您需要使用 WITH XMLNAMESPACES

试试这个:

WITH XMLNAMESPACES('http://www.w3.org/2001/XMLSchema-instance' AS i
                  ,DEFAULT 'http://schemas.microsoft.com/2003/10/Serialization/Arrays')
SELECT NULL
FOR XML PATH('ArrayOfKeyValueOfstringPunchListCellModel84zsBx89')

结果

<ArrayOfKeyValueOfstringPunchListCellModel84zsBx89 xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" />

这篇关于SQL XML 向根添加元素的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Execute complex raw SQL query in EF6(在EF6中执行复杂的原始SQL查询)
Hibernate reactive No Vert.x context active in aws rds(AWS RDS中的休眠反应性非Vert.x上下文处于活动状态)
Bulk insert with mysql2 and NodeJs throws 500(使用mysql2和NodeJS的大容量插入抛出500)
Flask + PyMySQL giving error no attribute #39;settimeout#39;(FlASK+PyMySQL给出错误,没有属性#39;setTimeout#39;)
auto_increment column for a group of rows?(一组行的AUTO_INCREMENT列?)
Sort by ID DESC(按ID代码排序)