Trouver et supprimer les caractères non ascii à partir d'un Oracle Varchar2

Nous sommes actuellement à la migration d'un de nos bases de données oracle en UTF8 et nous avons trouvé quelques enregistrements qui sont près de 4000 octets varchar limite.
Lorsque nous essayons de migrer ces dossier, ils échouent car ils contiennent des caractères qui deviennent multi-octets UF8 caractères.
Ce que je veux faire au sein de PL/SQL est de repérer ces personnages pour voir ce qu'ils sont, et ensuite, soit de les modifier ou de les supprimer.

Je voudrais faire :

SELECT REGEXP_REPLACE(COLUMN,'[^[:ascii:]],'')

mais l'Oracle ne pas mettre en œuvre les [:ascii:] classe de personnage.

Est-il un moyen simple de faire ce que je veux faire?

  • Vous auriez probablement souhaitez remplacer ç par c etcetera. Jeter l'ensemble du personnage est loin de pire que de jeter le signe diacritique.
  • Le 1er we besoin de savoir ce que les personnages sont avant de décider quoi faire avec eux.