2010-06-16 27 views
14

Je dois envoyer des emails HTML directement à partir du paquet oracle PL/SQL. Cela fonctionne presque bien. J'ai un problème avec le fait que certaines des données extraites d'une table contiennent des éléments comme <S>, <L>, et des fragments similaires, qui sont parfois traités comme des balises HTML, et même s'ils ne le sont pas, ils sont toujours ignorés et jamais affichés . Donc, j'ai besoin d'échapper à cette colonne avant de l'insérer dans le corps de l'e-mail.Comment faire pour échapper <, >, et & caractères aux entités html dans Oracle PL/SQL

Existe-t-il une fonction permettant d'échapper automatiquement les caractères spéciaux html dans les entités? Ou dois-je manuellement replace('<', '&lt;', string) tous les caractères spéciaux?

Répondre

29

Vous pouvez utiliser la fonction htf.escape_sc:

SQL> select htf.escape_sc('Please escape <this> tag') from dual; 

HTF.ESCAPE_SC('PLEASEESCAPE<THIS>TAG') 
------------------------------------------------------------------ 
Please escape &lt;this&gt; tag 
+1

Merci, ce que je cherchais! – SWilk