Когда я добавляюFreeTDS переполнении памяти от DBD :: Sybase
client charset = UTF-8
в мой файл freetds.conf, моя программа DBD :: Sybase выделяет:
Out of memory!
и заканчивается. Это происходит, когда я вызываю execute() в запросе SQL-запроса, который возвращает любые поля ntext. Я могу возвращать числовые данные, datetimes и nvarchars просто отлично, но всякий раз, когда одно из полей вывода является ntext, я получаю эту ошибку.
Все эти запросы отлично работают без настройки UTF-8, но мне нужно обрабатывать некоторые символы, которые вызывают предупреждения под набором символов по умолчанию. (См. related question.)
Сообщение об ошибке не отформатировано аналогично другим сообщениям DBD :: Sybase, похоже, отформатированы. Я получаю сообщение о том, что выдается rollback(). (Мой флаговый флаг AutoCommit соблюдается.) Я думаю, что я где-то читал, что FreeTDS использует программу iconv для преобразования между наборами символов; возможно ли, что это сообщение испускается из iconv?
Если я выполняю тот же запрос с теми же настройками freetds.conf в tsql (shell SQL командной строки FreeTDS), я не получаю ошибку.
Я подключаюсь к SQL Server.
Что мне нужно для успешного возвращения этих запросов?
Это исправлено; Спасибо! – skiphoppy