declare @Data xml
set @Data='<Root><item>1</item><item>2</item><item>3</item></Root>'
select T.C.value('.','nvarchar(100)') as Line from @Data.nodes('/Root/item')T(C)换成类似如下方法实现:
declare @iData int
declare @Data xml 
set @Data='<Root><item>1</item><item>2</item><item>3</item></Root>' 
EXEC sp_xml_preparedocument @iData output,@Data
--exec sp_xml_removedocument @iData
--print @iData
SELECT * FROM openxml(@iData,'/Root',3) WITH ([item] nvarchar(100))
不改变数据,用sp_xml_preparedocument及openxml实现就可。