我正在嘗試更新存儲在SQL Server XML列中的XML的節點Qty
,但沒有發生錯誤,但我的字段沒有更新。正在更新SQL Server XML節點
請指教。謝謝。
從SQL Server XML列複製的XML數據:
<ArrayOfCampaignVoucher xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<CampaignVoucher>
<VouCode>Vouch002</VouCode>
<Qty>4</Qty>
</CampaignVoucher>
<CampaignVoucher xsi:nil="true" /></ArrayOfCampaignVoucher>
存儲過程:
USE [c1]
GO
/****** Object: StoredProcedure [dbo].[Campaign_InsertRewardsVoucher] Script Date: 10/22/2011 23:33:35 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
/*
*/
ALTER PROCEDURE [dbo].[Campaign_InsertRewardsVoucher]
@voucherXML XML, -- @voucherXML is the XML pass from my SQL server
AS
BEGIN
declare @changedVal int
set @changedVal = 4
UPDATE [Customers]
SET voucherXML.modify('replace value of (/CampaignVoucher/Qty/text())[1] with "0"')
WHERE voucherXML.value('(/CampaignVoucher/Qty)[1]', 'int') = @changedVal
END
感謝您的電梯! – k80sg