将元素/值插入t-sql中XML列的特定子元素

时间:2012-11-05 03:04:17

标签: sql xml sql-server-2008 tsql

在SQL Server 2008中,我想基于该元素的另一个子元素(在本例中为ID)将一些元素和值插入到xml列的特定子元素中。 xml目前看起来像这样:

<Profile>
  <ID>16</ID>
  <User>
    <ID>BC4A18CA-AFB5-4268-BDA9-C990DAFE7783</ID>
    <Name>test</Name>
    <Activities />
  </User>
</Profile>

但是,xml中可能存在多个<User>元素,我只需要插入特定<User>值的<ID>。如何在MS SQL Server 2008 / t-sql中实现此目的?

修改 为简化起见,我从该列中获取xml并将其设置为变量:

DECLARE @profiles_xml xml
DECLARE @profile_id int
SET @profile_id = 16
SET @profiles_xml = (SELECT profiles from tbl_applied_profiles WHERE
profiles.value('(Profile/ID)[1]','int')= @profile_id)

@profiles_xml的xml值看起来就像我上面的那样。

0 个答案:

没有答案