我有一个存储在 SQL 中的 XML 字符串。插入 XML 的程序不会标记里面的所有对象。
字符串示例:
<XMLInfo Sample1="1234" Sample2="1234" Sample3="1234" Sample4="1234" />
我需要sample2
完全删除该项目。使这一点复杂化的其他事情可能不是每次都Sample2
遵循并且没有固定的长度。sample3
sample2
我有一个存储在 SQL 中的 XML 字符串。插入 XML 的程序不会标记里面的所有对象。
字符串示例:
<XMLInfo Sample1="1234" Sample2="1234" Sample3="1234" Sample4="1234" />
我需要sample2
完全删除该项目。使这一点复杂化的其他事情可能不是每次都Sample2
遵循并且没有固定的长度。sample3
sample2
SQL 服务器:
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');