Oracle
 sql >> Base de données >  >> RDS >> Oracle

Utilisation de MyBatis avec la fonction Oracle XMLType existsNode()

C'est possible. Vous ne devriez pas coder le ? dans votre XML MyBatis. MyBatis a un langage spécial pour SQL dynamique, je suggère de lire le Guide d'utilisation de MyBatis 3 .

Changez votre carte sql,

<select id="select" parameterType="String" resultMap="urlList">
    select 
                x.t002_id
    from
                 t002_metadata x  
    where
        existsNode(x.t002_xml, #{id}) = 1;
</select>

Ce n'est peut-être pas #{id}, cela dépend de la façon dont vous appelez select depuis Mybatis. Par exemple, vous utilisez peut-être la balise @Param.