Non penso che tu sia fortunato, Thx.
Ho provato diverse varianti sintattiche senza gioia. Ad esempio, l'ovvio:
SET MyXmlColumn.modify('...'), MyXmlColumn.modify('...')
rendimenti:
Il nome della colonna 'MyXmlColumn' è specificato più di una volta nella clausola SET . A una colonna non può essere assegnato più di un valore nella stessa clausola SET . Modificare la clausola SET per assicurarsi che una colonna sia aggiornata a una sola volta. Se la clausola SET aggiorna le colonne di una vista, allora il nome della colonna "MyXmlColumn" potrebbe apparire due volte nella definizione .
Ma non c'è niente di utile per questo messaggio di errore nello spazio DML XML.
La riga di fondo è che Expression1 & Expression2 devono essere elementi singoli.
Anche le discussioni più approfondite finiscono loop attraverso di essa ...
http://blogs.msdn.com/b/denisruc/archive/2005/09/19/471562.aspx
spiacenti. :(
PS: Se riesci a sopportare il hackiness, colata a VARCHAR (MAX), poi facendo un normale replace() dovrebbe fare il trucco Vedi:. Can I do a find/replace in t-sql?
Partenza la risposta a http://stackoverflow.com/questions/7395942/updating-multiple-xml-nodes-using-t-sql. –