我有一个存储在SQL中的XML字符串。插入XML的程序不会标记内部的所有对象。
字符串示例:
<XMLInfo Sample1="1234" Sample2="1234" Sample3="1234" Sample4="1234" />
我需要完全删除sample2
项。其他一些因素导致Sample2
每次sample3
后面都不会跟sample2
,{{1}}没有固定的长度。
答案 0 :(得分:2)
SQL Server :
update test set data.modify('delete XMLInfo/@Sample2');
PostgreSQL (我认为没有xml解析/修改功能,但有扩展名):
create or replace function remove_attrib(data xml, attr text)
returns xml
as
$$
import xml.etree.ElementTree as ET
r = ET.fromstring(data)
del r.attrib[attr]
return ET.tostring(r)
$$ language plpython3u;
update test set data = remove_attrib(data, 'Sample2');