Überprüfen Sie zunächst, ob Ihre Datenbank in der Lage ist, arabische Zeichen zu speichern, indem Sie
SELECT *
from NLS_DATABASE_PARAMETERS
WHERE PARAMETER IN ('NLS_CHARACTERSET', 'NLS_NCHAR_CHARACTERSET');
Wenn Sie Werte wie AL32UTF8
erhalten , AL16UTF16
oder WE8ISO8859P6
Sie sind in Ordnung und DB ist in der Lage, solche Zeichen zu speichern.
Gehen Sie in SQL Developer zu Tools / Preferences / Environment / Encoding und wählen Sie UTF-8
.
Setzen Sie eine Umgebungsvariable auf NLS_LANG=ARABIC_AMERICA.AL32UTF8
oder ähnlich, Sie können auch NLS_LANG=.AL32UTF8
verwenden um die voreingestellte/vorhandene Sprache und das Gebiet beizubehalten. Alternativ können Sie es auch in Ihrer Registry unter HKLM\SOFTWARE\Wow6432Node\ORACLE\KEY_%ORACLE_HOME_NAME%\NLS_LANG
einstellen (für 32 Bit), bzw. HKLM\SOFTWARE\ORACLE\KEY_%ORACLE_HOME_NAME%\NLS_LANG
(für 64bit).
Dann sollte es funktionieren.
Das Ändern Ihres lokalen Zeichensatzes (z. B. NLS_LANG) wirkt sich niemals auf vorhandene Daten in der Datenbank aus.