-- ================================================SET ANSI_NULLS ON
GOSET QUOTED_IDENTIFIER ON
GOCREATE PROCEDURE SP_Reports_GetParams
@ParamsString nvarchar(max),@Name nvarchar(100),
@Value nvarchar(250) output
ASBEGIN DECLARE @xmlDoc integer
EXEC sp_xml_preparedocument @xmlDoc OUTPUT, @ParamsString
SELECT top 1 @Value=Value FROM
OPENXML (@xmlDoc, ‘Params/Item‘, 1)
WITH (
Name nvarchar,
Value nvarchar)WHERE Name = @NameEXEC sp_xml_removedocument @xmlDocENDGO--调用示例
SET @doc = ‘<Params>
<Item Name="a" Value="1"/>
<Item Name="b" Value="2"/>
</Params>‘;
DECLARE @aaa nvarchar(250);exec AmwayFrameworkWorkflow.dbo.SP_Reports_GetParams @doc,‘b‘ ,@aaa output;
select @aaaMS SQLServer 操作XML语句的存储过程,布布扣,bubuko.com
原文:http://www.cnblogs.com/leleroyn/p/3613619.html