MS SQLServer 操作XML语句的存储过程

王朝学院·作者佚名  2016-05-26
窄屏简体版  字體: 小  |  中  |  大  |  超大  

MS SQLServer 操作xml语句的存储过程 -- ================================================

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

 

CREATE PROCEDURE SP_Reports_GetParams

@ParamsString nvarchar(max),

@Name nvarchar(100),

@Value nvarchar(250) output

AS

BEGIN

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 = @Name

EXEC sp_xml_removedocument @xmlDoc

END

GO

 

--调用示例

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 @aaa

.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航