sql >> Database teknologi >  >> RDS >> Sqlserver

Slet xml-node fra SQL Server 2008 r2 tabelkolonne baseret på attributværdi

Nå, da din XML-attribut id er XML-navnerummet med præfikset p5 , skal du også erklære og bruge det andet XML-navneområde i din kode:

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

Se den anden XML-navneområdedefinition for p5 ? Se brugen af ​​dette XML-navneområde i qn:FilterValue[@p5:Id=sql:variable("@lookupvalueId")] udtryk?




  1. Fjern Mysql-rækken efter angivet tidspunkt

  2. Har brug for forklaring på karaktertyper i PostgreSQL

  3. sql for at finde den seneste post i en gruppe

  4. postgres tekstsøgning