2010-07-12 54 views
5

我有类似下面的查询:无法将'WITH XMLNAMESPACES ... FOR XML PATH'的输出设置为变量?

;WITH XMLNAMESPACES (DEFAULT 'http://www.somewhere.com') 
SELECT ('SOMETHING') 
FOR XML PATH('RootNode'), TYPE 

运行此工作正常。但是,我遇到麻烦时,我尝试将XML输出设置成这样的变量:

DECLARE @MYXML AS XML 

SELECT @MYXML = (
;WITH XMLNAMESPACES (DEFAULT 'http://www.somewhere.com') 
SELECT ('SOMETHING') 
FOR XML PATH('RootNode'), TYPE 
) 

这只是给我一个语法错误:-(关于如何做到这一点,将不胜感激任何想法

回答

19
DECLARE @MYXML AS XML 

;WITH XMLNAMESPACES (DEFAULT 'http://www.somewhere.com') 
SELECT @MYXML = (
    SELECT ('SOMETHING') 
    FOR XML PATH('RootNode'), TYPE) 
+0

我可以抱抱你 – YourMomzThaBomb 2010-07-12 17:16:41