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

Usuń węzeł xml z kolumny tabeli SQL Server 2008 r2 na podstawie wartości atrybutu

Cóż, ponieważ Twój atrybut XML id to przestrzeń nazw XML z przedrostkiem p5 , musisz również zadeklarować i użyć tej drugiej przestrzeni nazw XML w swoim kodzie:

declare @lookupvalueId varchar(50)
declare @ruleId varchar(50)

set @lookupvalueId = 'b897f3ac-b40f-4b96-b438-eb156a26457e'
set @ruleId = 'fc39f423-05c0-4de9-ae46-12fe3c0c279b'

;WITH XMLNAMESPACES ('urn:gjensidige:processguide:201201' as qn,
                     'urn:gjensidige:processguide:201201' as p5)
update 
    pdr_processdefinitionrule
set 
    PDR_RuleXml.modify('delete (/qn:DifficultyRule/qn:FromControls/qn:Control/qn:FilterValues/qn:FilterValue[@p5:Id=sql:variable("@lookupvalueId")])')
where 
    pdr_guid = @ruleId

Zobacz drugą definicję przestrzeni nazw XML dla p5 ? Zobacz użycie tej przestrzeni nazw XML w qn:FilterValue[@p5:Id=sql:variable("@lookupvalueId")] wyrażenie?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wstaw dane za pomocą funkcji o wartościach przechowywanych w tabeli w SQL Server

  2. Jak uzyskać wartość od step1 do step2 w sql Job

  3. Dołączanie pliku MDF bez pliku LDF

  4. niekodowane Count(*) vs tabele systemowe

  5. Suma godzin i minut w SQL Server 2008