Det "enkla" tillvägagångssättet skulle vara att casta XML-kolumnen till VARCHAR(MAX) och helt enkelt göra en ERSÄTTNING på den:
UPDATE
YourTable
SET
ParameterValue = CAST(REPLACE(CAST(ParameterValue AS VARCHAR(MAX)), '
Billy', 'Peter') AS XML)
WHERE
....
Det verkar nästan som att du inte kan göra en uppdatering av flera XML-nodvärden i en enda UPDATE-sats, som Richard Szalay förklarar här :
Tyvärr verkar det som om implementeringen är fruktansvärt begränsad genom att den inte kan göra ett godtyckligt antal ändringar av samma värde i en enda uppdatering.
Så jag antar att du antingen måste använda den "dumma" VARCHAR(MAX)-metoden som nämns ovan, eller göra uppdateringen i en loop (MEDAN du fortfarande hittar en nod med "billy", UPPDATERA den noden för att läsa "Peter" istället ).
Marc