我有一个类似于存储在我的数据库中的XML字符串:
<?xml version="1.0" encoding="utf-8"?>
<AddressMaintenance>
<Label Name="lblAddress11">Address Line 1</Label><TextBox Name="txtAddress11">Zuellig Korea</TextBox>
</AddressMaintenance>
您知道是否有办法使用XMLQuery或SQL提取 Zuelling Korea 的值?我无法创建临时表,因为它是一个验证环境,所以我只能读取该值。我知道可以使用reg exp,但是,如果可能的话,我会尝试使用XML。
感谢,
安德烈
答案 0 :(得分:5)
如果它存储在表上的XMLTYPE中,您可以使用Oracle XML函数使用XPath提取它:
SELECT
extractvalue(xmlcol, '/*/TextBox[@Name=''txtAddress11'']') txtaddress
FROM yourtable
根据您的需要调整XPath。
请参阅ExtractValue documentation或研究其他Oracle XML函数。
我应该注意11g及更高版本,不推荐使用extractvalue,你应该使用XMLQuery