Oracle 从blob列中选择特定字符串

Oracle 从blob列中选择特定字符串,oracle,oracle11g,blob,Oracle,Oracle11g,Blob,我有一个名为MSTCUSTOMERPROFILE的表,它有一个BLOB类型的列ROLELIST。现在这个BLOB有xml格式的数据,例如数据 <RoleListDTO> <rolelist> <RoleDTO> <idEntity/> <idEntityDesc/> <userType>ECU</userType> <userTypeDesc/&g

我有一个名为MSTCUSTOMERPROFILE的表,它有一个BLOB类型的列ROLELIST。现在这个BLOB有xml格式的数据,例如数据

<RoleListDTO>
  <rolelist>
    <RoleDTO>
      <idEntity/>
      <idEntityDesc/>
      <userType>ECU</userType>
      <userTypeDesc/>
      <idRole>5</idRole>
      <description>02A ENQUIRIES - ACCOUNT INFORMATION</description>
      <idChannel>01</idChannel>
      <idChannelDesc/>
      <token/>
      <datCreated/>
      <createdBy/>
      <datLastUpdated/>
      <isDefaultRole>false</isDefaultRole>
      <isDisplayCustProfile>false</isDisplayCustProfile>
      <idcust/>
      <typecust/>
      <roleCreatebyUser>
        <ListUserDTO>
          <idEntity/>
          <idEntityDesc/>
          <userType/>
          <userTypeDesc/>
          <idChannel/>
          <idChannelGroup/>
          <idChannelDesc/>
          <firstName/>
          <lastName/>
          <idChannelUser/>
          <salutation/>
          <idUser/>
          <email/>
          <isActive/>
          <isProxyLocked/>
          <isGroupFlag/>
          <lockReason/>
          <actDeactReason/>
        </ListUserDTO>
      </roleCreatebyUser>
    </RoleDTO>
    <RoleDTO>
      <idEntity/>
      <idEntityDesc/>
      <userType>ECU</userType>
      <userTypeDesc/>
      <idRole>88</idRole>
      <description>02C ENQUIRIES - CREDIT CARD DETAILS</description>
      <idChannel>01</idChannel>
      <idChannelDesc/>
      <token/>
      <datCreated/>
      <createdBy/>
      <datLastUpdated/>
      <isDefaultRole>false</isDefaultRole>
      <isDisplayCustProfile>false</isDisplayCustProfile>
      <idcust/>
      <typecust/>
      <roleCreatebyUser>
        <ListUserDTO>
          <idEntity/>
          <idEntityDesc/>
          <userType/>
          <userTypeDesc/>
          <idChannel/>
          <idChannelGroup/>
          <idChannelDesc/>
          <firstName/>
          <lastName/>
          <idChannelUser/>
          <salutation/>
          <idUser/>
          <email/>
          <isActive/>
          <isProxyLocked/>
          <isGroupFlag/>
          <lockReason/>
          <actDeactReason/>
        </ListUserDTO>
      </roleCreatebyUser>
    </RoleDTO>
  </rolelist>
  <rmemail/>
</RoleListDTO>

电子控制单元
5.
02A查询-帐户信息
01
假的
假的
电子控制单元
88
02C查询-信用卡详情
01
假的
假的
我想获取blob中
标记内的数据,在本例中,它是88,即我想要获取的结果


我需要通过选择查询来实现这一点,在Oracle数据库中是否可行。?如何使用???

查看XML函数文档:


类似于EXTRACTVALUE的东西我有一个解决方法,基本上我想基于xml中节点中的值来做一些逻辑,这个值恰好在这个blob中,并且希望它在java中。因此,我将java中的blob读入一个字节数组,制作了一个DTO,一个java类,它与xml和其中的节点具有完全相同的细节和属性,并使用DTO解组逻辑、传递的字节数组和所有元素填充它


所以基本上我做了一个变通的方法,这并不是我想要的答案,但它是有效的

如果xml格式不可读,没有人能回答。请格式化是的,你是对的。虽然这可能部分回答了这个问题,但它并不能完全回答这个问题,而且几乎是一个仅链接的答案。MT0是的,另外这是xml类型,我希望它用于BLOB