更新XML元素&存储过程中的属性 [英] Updating XML elements & attributes within stored procedure

查看:88
本文介绍了更新XML元素&存储过程中的属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要一些帮助!非常感谢任何尝试的人.

此过程的参数之一(@NextSlot)是XML数据类型.在将其保存到dbase之前,如何编辑/更新/添加其节点(属性和元素).

I need some help here! many thanks to anyone that attempts.

One of the args of this procedure (@NextSlot) is an XML datatype. How do I edit/update/add-to its nodes (attributes and elements) before saving it to dbase.

ALTER PROCEDURE dbo.GetXmlData
(
	@NextSlot XML OUTPUT,
	@RowID BIGINT
)	
AS
	SET NOCOUNT ON 

	DECLARE @TransXEl XML, @XmlHandle INT, @CurrentStatus NVARCHAR(20)

	SET @TransXEl = (SELECT ContextCol FROM XElTab WHERE RowID = @RowID)
	
		EXEC sp_xml_preparedocument @XmlHandle OUTPUT, @TransXEl;

		SET @CurrentStatus =  (SELECT VariationStatus FROM OPENXML (@XmlHandle, '/PayPattern', 2)
		WITH (VariationStatus VARCHAR(20) '@VariationStatus'))

		IF(@CurrentStatus = 'Vacant')
	-- HOW DO I  UPDATE ELEMENT @CurrentStatus IN @NextSlot
		--AS IN @NextSlot.Element('CurrentStatus').Value = Vacant

	-- OR ADD A NEW ATTRIBUTE TO @TransXEl
    		-- AS IN @TransXEl.Add(new XAttribute('NewAttrib', 'NewValue')

	---OR UPDATE USING OPENXML HANDLE
		-- AS IN UPDATE  OPENXML (@XmlHandle, '/PayPattern', 2) SET 
--'@VariationStatus' = 'ALLOCATED')



信不信由你,这事关重大,许多双手正等待着僵局被打破!请帮忙!



believe it or not, too much is at stake for this and many hands are waiting idle for the impasse to be broken! please help!

推荐答案

好吧,我找到了@:

http://msdn.microsoft.com/zh-CN/library/ms190675.aspx;
http://msdn.microsoft.com/zh-CN/library/ms175466.aspx;

谢谢GParkings-我的立场是正确的.
Okay folks I found respite @:

http://msdn.microsoft.com/en-us/library/ms190675.aspx;
http://msdn.microsoft.com/en-us/library/ms175466.aspx;

Thank you GParkings - I stand corrected.


这篇关于更新XML元素&存储过程中的属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆