【发布时间】:2014-02-17 15:00:39
【问题描述】:
我在 Sql Server 的 Xml 列中有一些 XML,我想在上面提供一个视图。具体来说,我想将根元素的“版本”属性与整个 XML 块本身一起公开。
该表有一个名为“树”的列。
XML 如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<ClassificationTree xmlns="http://schemas.tempuri.org/2014/02/17" version="1.0">
<Classification name="WTG" priority="1">
<Classification name="Corrective" priority="1">
<Classification name="RDSPP-Codes" priority="1" />
</Classification>
<Classification name="Predetermined" priority="2">
<Classification name="Non Service related (tests, visits etc)" priority="1" />
<Classification name="Scheduled Service" priority="2" />
</Classification>
</Classification>
</ClassificationTree>
当我这样查询时:
WITH XMLNAMESPACES ('http://schemas.tempuri.org/2014/02/17' AS ns1)
select
Tree.value('(/ns1:ClassificationTree/@version)[0]','varchar(20)') as Version
, Tree
from
ClassificationTree
我得到了 Xml 块,但“版本”列是 NULL。
我在这里错过了什么?
【问题讨论】:
标签: xml sql-server-2012 xquery