Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Aktualizowanie atrybutów XML o nowe wartości w tabeli SQL Server 2008

Od wczesnych wersji twojego pytania wygląda na to, że twój kod XML faktycznie znajduje się w różnych wierszach tabeli. Jeśli tak jest, możesz tego użyć.

update YourTable set
  XMLText.modify('replace value of (/Identification/@Age)[1] with "40"')
where XMLText.value('(/Identification/@Age)[1]', 'int') = 30

Próbka robocza przy użyciu zmiennej tabeli.

declare @T table(XMLText xml)

insert into @T values('<Identification Name="John"  Family="Brown"   Age="30" />')
insert into @T values('<Identification Name="Smith" Family="Johnson" Age="35" />') 
insert into @T values('<Identification Name="Jessy" Family="Albert"  Age="60" />')
insert into @T values('<Identification Name="Mike"  Family="Brown"   Age="23" />')
insert into @T values('<Identification Name="Sarah" Family="Johnson" Age="30" />')

update @T set
  XMLText.modify('replace value of (/Identification/@Age)[1] with "40"')
where XMLText.value('(/Identification/@Age)[1]', 'int') = 30

select *
from @T 


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zapętlanie zestawu rekordów w SQL Server

  2. Co to jest system zarządzania bazą danych i relacyjnymi bazami danych (RDBMS)

  3. Zapisz tablicę bajtów na serwerze sql

  4. Jak ustawić nazwę tabeli w dynamicznym zapytaniu SQL?

  5. Funkcja AWS Lambda do połączenia z SQL Server za pomocą Pythona