Всего у вас есть три набора символов или кодировки.
- Какая кодировка вашего файла?Проверьте параметры сохранения редактора или приложения, создавшего файл.
- Набор символов вашего окна командной строки
cmd.exe
, называемый "кодовая страница".Вы можете опросить (или изменить) с помощью команды chcp
- Набор символов вашей базы данных.
1) и 2) должны быть одинаковыми.Используйте команду chcp
, чтобы установить их равными (или изменить настройки в вашем редакторе)
3) может отличаться, но набор символов должен поддерживать персидские / арабские символы, так что, скорее всего, AL32UTF8
, который в настоящее время используется по умолчанию.
Используйте значение NLS_LANG
, чтобы указать базе данных, какой набор символов используется для 1) и 2), пример
C:\>chcp 1256
Aktive Codepage: 1256.
C:\>set NLS_LANG=.AR8MSWIN1256
C:\>sqlldr ...
. Вы можете получить список кодовых страниц и символов Oracle.установить с этим запросом:
SELECT VALUE AS ORACLE_CHARSET, UTL_I18N.MAP_CHARSET(VALUE) AS IANA_NAME
FROM V$NLS_VALID_VALUES
WHERE PARAMETER = 'CHARACTERSET';
А вот список Идентификаторов кодовой страницы
См. также OdbcConnection, возвращая китайские иероглифы как "?" чтобы получить более подробную информацию.