在SQL中复制XML名称空间

在SQL中复制XML名称空间,第1张

在SQL中复制XML名称空间

从XML来看,第二个结果是自给自足的XML元素,而第一个结果只能

cfdi
是定义前缀名称空间的其他元素的一部分。因此,我想所有的工作都如您所定义。

子选择

(SELECt importe, TasaCuota, TipoFactor, Impuesto, baseFROM CDFIDetFOR XML RAW('cfdi:traslado'), TYPE, ROOT('cfdi:traslados'))

产生自给自足的结果

<cfdi:traslados xmlns:cfdi="uri">   <cfdi:traslado importe="1920" TasaCuota="0" TipoFactor="Tasa" Impuesto="16" base="240" />   <cfdi:traslado importe="2202" TasaCuota="0" TipoFactor="TASA" Impuesto="16" base="450" /></cfdi:traslados>

因为您定义了

ROOT('cfdi:traslados')
-您具有名称空间,并且嵌套元素
cfdi:traslado
位于同一个名称空间中-
没有单独的名称空间声明。

然后顶部选择:

 SELECt    '' AS importe,   (SELECT importe, TasaCuota, TipoFactor, Impuesto, base      FROM CDFIDetFOR XML RAW('cfdi:traslado'), TYPE, ROOT('cfdi:traslados')) FROM CFDIENC   FOR XML RAW('cfdi:gatito'), TYPE)

为其定义根元素,

cfdi:traslados
因为
cfdi:gatito
它具有自己的
cfdi
前缀名称空间声明。

我对sql-server XML不熟悉,但是如果您

ROOT('cfdi:traslados')
从子选择中删除会发生什么
呢?它会
xmlns:cfdi="uri"
<cfdi:traslados xmlns:cfdi="uri">
元素中删除吗?



欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5620433.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存