powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / bcp -Jutf8
12 сообщений из 12, страница 1 из 1
bcp -Jutf8
    #34959797
Kru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хочу поделиться опытом. Может пригодится кому-нибудь : -)

Нужно было загрузить файлик с примерно миллионом записей. С виду обычный текст.
BCP возвращало ошибку переполнения буфера при переводе текста из формата клиента в формат сервера.
Чего только не пробовал: -с, -n, все поля в целевой таблице varchar(255), уменьшал размеры батчей, "пилил" загрузку на несколько команд - ничего не помогало.

Оказалось, что нужно было ключик -Jutf8 поставить.

Всё сразу заработало :-)

Странно, что ASE не смог автоматически распознать юникодовский файл.
Версия ASE12.5.4 под Linux
...
Рейтинг: 0 / 0
bcp -Jutf8
    #34960523
moris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К вам такой вопрос - А на каком основании ASE это должен был распознать???? Что он должен был парсировать каждую текстовую переменную, на наличе в ней unicode символов?? ASE не делает такого, как впрочем и другие сервера БД.
Клиент должен явно указать тип кодировки через флаг -J или ASE возьмет дефолтную кодировку из locales.dat
...
Рейтинг: 0 / 0
bcp -Jutf8
    #34960835
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
moris пишет:
> К вам такой вопрос - А на каком основании ASE это должен был
> распознать???? Что он должен был парсировать каждую текстовую
> переменную, на наличе в ней unicode символов??

Так главное - это НЕВОЗМОЖНО сделать вообще !
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
bcp -Jutf8
    #34961313
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
morisК вам такой вопрос - А на каком основании ASE это должен был распознать???? Что он должен был парсировать каждую текстовую переменную, на наличе в ней unicode символов?? ASE не делает такого, как впрочем и другие сервера БД.
Клиент должен явно указать тип кодировки через флаг -J или ASE возьмет дефолтную кодировку из locales.dat
ну хочется Kru, чтобы там был эвристический анализатор, ну хочется ;)
...
Рейтинг: 0 / 0
bcp -Jutf8
    #34962170
Kru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Совсем маленькое количество строк всё-таки можно загрузить и символы читабельные. Получается, что сервер их смог сконвертировать в свою кодировку, т.е. он как-то "понял" что это был юникод.

Судя по тому, что на немного большем количестве записей подобная конвертация выедает всю память, такое "понимание" очень дорого обходится.

Но всё-таки - если дают текстовый файл который нужно загрузить BCP на сервер, получается, что кодирову очень желательно выяснить заранее.

Как понять, что это Unicode или какая-нибудь другая кодировка распознавание которой будет накладным?

Те, кому приходится грузить файлы из разных источников, поделитесь опытом подготовки к загрузке.

Заранее спасибо.
...
Рейтинг: 0 / 0
bcp -Jutf8
    #34962275
Фотография Dmitry.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
договориться чтобы присылали только utf8 например.
или чтобы вместе с файлами присылали и кодировку с которой выгрузили данные.
...
Рейтинг: 0 / 0
bcp -Jutf8
    #34962557
Kru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry.договориться чтобы присылали только utf8 например.
или чтобы вместе с файлами присылали и кодировку с которой выгрузили данные.

А имея файл можно как-нибудь ( недорого : -) ) узнать его кодировку?

Спасибо
...
Рейтинг: 0 / 0
bcp -Jutf8
    #34962670
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kru Dmitry.договориться чтобы присылали только utf8 например.
или чтобы вместе с файлами присылали и кодировку с которой выгрузили данные.

А имея файл можно как-нибудь ( недорого : -) ) узнать его кодировку?

Спасибо
имхо, в общем случае это довольно проблематично, если у текстового файла нет закголовка с указанием кодировки ;)

например, файл с цифрами - как вы определите DOS или WIN кодировка ?
все перекодировщики, которые я видел, оставляли принятие решения о правильности выбора кодировки на суд хомо сапиенса.

тулза
...
Рейтинг: 0 / 0
bcp -Jutf8
    #34962823
Фотография Dmitry.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kru Dmitry.договориться чтобы присылали только utf8 например.
или чтобы вместе с файлами присылали и кодировку с которой выгрузили данные.

А имея файл можно как-нибудь ( недорого : -) ) узнать его кодировку?

если задача различить utf8 и 1251 например то есть алгоритм который может ответить если файл содержит корректную utf8 кодировку.
здесь см ф-ю isLegalUTF8.
но например различить iso_1 roman8 1251 практически невозможно разве что делать словарь итд...
...
Рейтинг: 0 / 0
bcp -Jutf8
    #34963063
moris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такая тулзень которая определяет кодировку на основе словаря. Называется Штирлиц
...
Рейтинг: 0 / 0
bcp -Jutf8
    #34965879
Kru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
komrad Kru Dmitry.договориться чтобы присылали только utf8 например.
или чтобы вместе с файлами присылали и кодировку с которой выгрузили данные.

А имея файл можно как-нибудь ( недорого : -) ) узнать его кодировку?

Спасибо
имхо, в общем случае это довольно проблематично, если у текстового файла нет закголовка с указанием кодировки ;)

например, файл с цифрами - как вы определите DOS или WIN кодировка ?
все перекодировщики, которые я видел, оставляли принятие решения о правильности выбора кодировки на суд хомо сапиенса.

тулза
Спасибо за ссылку. Прикольная тулза :-)
...
Рейтинг: 0 / 0
bcp -Jutf8
    #34965890
Kru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем большое спасибо
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / bcp -Jutf8
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]