DB2 Импорт и интернационализация - PullRequest
0 голосов
/ 06 января 2012

У меня есть CSV-файл, содержащий международный текст, как показано ниже

+0000000000000010003.,+0000000000000000103.,+0526640777496331405.,+0000000000000000019.,"¿¿¿¿¿¿"
+0000000000000010020.,+0000000000000000120.,+0526640777496331405.,+0000000000000000019.,"¿¿¿¿¿¿¿¿"

Когда я загружаю его по FTP на сервер базы данных для загрузки, я вижу на сервере какой-то ненужный символ:* Я пытался использовать iconv -f ISO8859-9 -t UTF-8 test / sample_cat_master.csv> test / sample_cat_master_test.csv, но не получил результат.Я по-прежнему вижу мусорный символ.

При импорте из этого файла появляется следующее сообщение: SQL3110N Утилита завершила обработку.Из входного файла были прочитаны строки «0».

SQL3221W ... Начать COMMIT WORK.Количество входных записей = "0".

SQL3222W ... COMMIT любых изменений базы данных был успешным.

SQL3149N "0" строк были обработаны из входного файла.«0» строк были успешно вставлены в таблицу.Строки «0» были отклонены.

1 Ответ

0 голосов
/ 09 января 2012

Файл поврежден из-за неправильного перевода кодовой страницы, поэтому вам нужно определить, где и как это происходит, чтобы предотвратить это.Ваши попытки просмотреть и / или отредактировать файл с помощью утилит Linux / UNIX могут также переводить символы файла UTF-8, так как большинство дистрибутивов по умолчанию редко используют кодовую страницу UTF-8.

Перед подключением базы данныхпопробуйте FTP-файл в двоичном режиме в надежде сохранить кодировку UTF-8 и избежать нежелательного преобразования кодовой страницы.Утилита od особенно полезна для проверки содержимого двоичного файла или текстового файла, который использует другую кодовую страницу.Если od не показывает допустимые многобайтовые последовательности для символов UTF-8, то нет никаких шансов, что база данных также будет правильно обрабатывать данные UTF-8.

Какая кодовая страница была вашей базой данных DB2построен для использования?Если не 1208 (UTF-8), вы, вероятно, столкнетесь с дополнительными проблемами перевода при использовании утилиты IMPORT.Вам также может потребоваться установить DB2CODEPAGE равным 1208 в вашей клиентской среде и реестре DB2, а также установить кодовую страницу = 1208 в разделе MODIFIED BY оператора IMPORT.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...