2012-01-05 83 views
0

我想用xml数据类型检索列的值。我已经研究了用于检索的查询方法,但不太确定我是否可以使用它检索无类型的xml值。 也无法从结果集中检索xml列值。 检索后,我想将它存储在Document中进行解析。SQL Server 2008:从ResultSet中检索XML列值并将其存储在文档中

CREATE TABLE [upd].[PRPMST](
[ETMADD] [nvarchar](16) NOT NULL, 
[ETDXML] [xml] NOT NULL) 

我想检索列值ETMADD 将被包含在此列中的XML看起来是这样的:

<root> 
    <PRPMST> 
    <DownloadEnvironment>UAT</DownloadEnvironment> 
    <RetentionPeriod>2</RetentionPeriod> 
    <DownloadAttempts>2</DownloadAttempts> 
    . 
    . 
    . 
    </PRPMST> 
</root> 

回答

0

要么你可以把它像往常一样二进制或字符值,如这样的:

SELECT ETMADD, CAST(ETDXML as nvarchar(max)) as XmlDoc 
from [upd].[PRPMST] 

OR

,如果你需要从 XML列的值,尽量要做到这一点,例如:

SELECT 
    * , 
    ETDXML.value('/root[1]/PRPMST[1]/DownloadEnvironment[1]', 'varchar(5)') AS DownloadEnvironment 
from [upd].[PRPMST] 
+0

作品fine.Thanks :) – shabeena 2012-01-05 07:08:48

相关问题