tplanitz
Erfahrenes Mitglied
Hallo Leute,
Ich möchte Diakritische Zeichen in "normale" Zeichen umwandeln.
Der Knackpunkt dabei sind zwei verschiedene Datenbank NLS_Charset Konfigurationen.
Ich kann die Daten aus zwei Datenbanken abfragen und soll diese vergleichen.
Also ich muss aus dem Namen Nguyẽn den Namen Nguyen machen. Also das ẽ umwandeln in ein e
Beide Datenbanken können beides enthalten.
Metadaten:
Meine Methode um Die Zeichen in DB-01 umzuwandeln funktioniert einwandfrei:
Wenn ich diese Methode auf DB-02 anwende bekomme ich sowas wie das hier: Nguy?n
Konnte ich meine Frage verständlich stellen und hat jemand einen Ansatz wie ich weitermachen kann?
Viele Grüße und ein schönes Wochenende
T.
Ich möchte Diakritische Zeichen in "normale" Zeichen umwandeln.
Der Knackpunkt dabei sind zwei verschiedene Datenbank NLS_Charset Konfigurationen.
Ich kann die Daten aus zwei Datenbanken abfragen und soll diese vergleichen.
Also ich muss aus dem Namen Nguyẽn den Namen Nguyen machen. Also das ẽ umwandeln in ein e
Beide Datenbanken können beides enthalten.
Metadaten:
Datenbank | NLS_CHARSET | Spaltendefinition | Spalteninhalt (NAME) | Spalteninhalt nach umwandlung |
DB-01(Oracle 12) | AL32UTF8 | NVARCHAR2(45 CHAR) | Nguyẽn | Nguyen |
DB-02(Oracle 12) | WE8ISO8859P15 | NVARCHAR2(45 CHAR) | Nguyẽn | Nguyen |
Liste der möglichen diakritischen Zeichen: | é ḫ ģ ő ȁ ỷ ď ơ ș ů ā ę ż ñ ë â |
Meine Methode um Die Zeichen in DB-01 umzuwandeln funktioniert einwandfrei:
Code:
select
'Nguyẽn' as name_diakr
, utl_raw.cast_to_varchar2((nlssort('Nguyẽn', 'nls_sort=binary_ai'))) as name_norm
from dual
Wenn ich diese Methode auf DB-02 anwende bekomme ich sowas wie das hier: Nguy?n
Konnte ich meine Frage verständlich stellen und hat jemand einen Ansatz wie ich weitermachen kann?
Viele Grüße und ein schönes Wochenende
T.