powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / PHP + INFORMIX, при обращении к lvarchar ошибка
19 сообщений из 19, страница 1 из 1
PHP + INFORMIX, при обращении к lvarchar ошибка
    #35747672
SNK2004
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IBM Informix Dynamic Server Version 11.50.FC3
PHP Version 5.2.0
phpinfo выдает ESQL/C Version 3.50

При выполении запроса из PHP вместо содержимого поля типа lvarchar выдается такое:
ESQL/C : caption : unsupported field type[370]
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #35747701
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Воможно, будет полезно
"A step-by-step how-to guide to install, configure, and test a Linux, Apache, Informix, and PHP server"
http://www-128.ibm.com/developerworks/db2/library/techarticle/dm-0606bombardier/

Обратите внимание на версию Informix ClientSDK (лучше взять клиента от IDS 11.5)

Поищите подходящую информацию на comp.databases.informix ( http://groups.google.com.ua/group/comp.databases.informix/topics )
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #35754880
yack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Версия клиента самая свежая, от того же дистрибутива.

С той же базой нормально работает c другой машины со старого SDK от 10-го Informix.
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #35755386
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yackВерсия клиента самая свежая, от того же дистрибутива.
С той же базой нормально работает c другой машины со старого SDK от 10-го Informix.
Если вы знаете условия, при которых все работает, тогда в чем состоит вопрос ?
Или это была просто "информация для размышления" ?
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #35760347
yack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вопрос в том, что ставить старую версию Client SDK (от 10.1) на сервер с 11.5 - более чем нерезонно и хочется знать, не удалось ли кому обойти вышеуказанную проблему, оставшись на новой версии.
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #35761076
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yackвопрос в том, что ставить старую версию Client SDK (от 10.1) на сервер с 11.5 - более чем нерезонно...
Не вижу здесь никакой проблемы.
Если вам не нужны какие-то гипотетические возможности нового клиента, то почему бы не работать на старой версии ? Много раз наблюдал такие симбиозы. Основная ведь задача в том, чтобы связка работала стабильно и правильно, а не в совпадении и новизне версий.
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #35764273
Ilya Kulagin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vasilisyackвопрос в том, что ставить старую версию Client SDK (от 10.1) на сервер с 11.5 - более чем нерезонно...
Не вижу здесь никакой проблемы.
Если вам не нужны какие-то гипотетические возможности нового клиента, то почему бы не работать на старой версии ? Много раз наблюдал такие симбиозы. Основная ведь задача в том, чтобы связка работала стабильно и правильно, а не в совпадении и новизне версий.

Могу сказать то же самое: обращение "старым" клиентом к "новой" базе, - это нормальный режим работы, поддерживаемый производителем СУБД.

Гораздо важнее оказывается взаимодействие клиента с php. Например, лично я всё ещё использую SDK из времён 7 версии Informix, поскольку "старый" php 4 с ним собирается и работает. И пока не перестанет собираться - буду использовать.
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #35768277
GVF112GVF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер!

В данном случае, необходимо рассмотреть несколько вариантов, указанной проблемы:
- наличие ошибок в новой версии Informix CSDK ESQL/C.
- ошибка в SQL-запросе (неявный вызов фукции для преобразования типов и т.д.).
- ошибка сборки библиотеки PHP для работы с сервером Informix 11.50.FC3.

Проверить на каком уровне происходит ошибка достаточно просто:
------------------------------------------------------------------
1. Выполнить проблемный SQL-запрос в dbaccess.
2. Скомпилировать тестовую программу ESQL/C с использованием последней версии CSDK.
3. Выполнить трассировку SQLI- протокола для сессии с проблемным SQL и посмотреть на SQL-дамп трассировки.

Когда будет известен диагноз, тогда можно будет предлагать пути решения, указанной проблемы.
Есть подозрение, что это ошибка INFORMIX. Похожая ситуация была обнаружена для утилиты
dbschema (IDS 11.50.FC3) - dbschema does not yet correctly support VERCOLS.

В любом случае, нужно поставить диагноз.

С уважением,
Вадим.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
PHP + INFORMIX, при обращении к lvarchar ошибка
    #36476462
yack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
немного с опозданием, но все же...
Опытным путем установлено, что конфликт возникает именно на стыке PHP и ESQL/C.
В моем случае 2.90 работает без нареканий, а 3.50 работает с вышеуказанной ошибкой для lvarchar.
Промежуточными версиями не располагаю, но в гугле натыкался на похожую проблему с VisualBasic на версии 3.00
Решить пока удалось только даунгрейдом. Однако, не без проблем. Например, на Ubuntu не ставится 2.90 ни при каких танцах ни с каким бубном. Пришлось юзать Mandriva
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #36476467
yack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, еще раз по поводу ошибки:
ESQL/C : caption : unsupported field type[370]
здесь caption - это имя поля, а 370 - это как-раз длина той самой строки, которую я ожидаю в качестве результата запроса.
Dbaccess выводит все поле корректно, Serverstudio - тоже. А вот PHP - хромает.

Array{
[id] => 4522445
[product_id] => 10
[product_date] => 2010-02-11 20:35:26
[header] => 'Новый сезон скидок в магазинах Дачетехника'
[caption] => ESQL/C : body : unsupported field type[864]
[status] => 0
[user_id] => 134
}

Еще раз подчеркну - такая ощибка только с полем типа lvarchar.
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #36476475
yack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В исходниках PHP-шного модуля ifx.ec идет case обработки типов, в результате которого значение default (т.е. не попавшее ни под одно условие) генерирует как раз эту ошибку.
Что могли поменять такого в ESQL/C, что они уже не определяются как lvarchar ?
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #36476481
yack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если еще глубже - то он не проходит проверку на SQLLVARCHAR
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #36604595
yack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Идей нет? Информикс никто не юзает?
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #36650228
yack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вопрос-то по-прежнему актуален!
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #36653987
falcon111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
yackESQL/C : caption : unsupported field type[370]
Пхпшные информикс-дрова написаны левой задней ногой студента двоечника - там глюков больше чем кода.
Я уже даже не помню, сколько таких косяков в свое время фиксил, чтобы оно нормально работало.
И данную ошибку с необработанными типами в СИшных case-ах чинить надо, и косяк с persistent-коннекшнами, даже не пытающимися восстанавливать оборванные сессии, и до перезапуска пхп теряющими связь с сервером, и с датами там что-то такое было, уже даже не помню....

Данный конкретный глюк связан с необработанным типом данных - надо добавлять обработку вставляя соответствующие case в обработчике типов в пхп-драйвере. Точнее не скажу, ибо делал это года 4 назад, уже давно не помню подробностей.
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #36655106
yack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С кривизной драйвера согласен полностью. А pconnect я не использовал, т.к. имхо для сеансовых веб-приложений это не лучший вариант.

Вопрос сейчас сводится к следующему: если старый SCDK 2.90 называл называл lvarchar как SQLLVARCHAR, то в 3.50 SQLLVARCHAR не прокатывает.
Вопрос в том, что в 3.50 вместо SQLLVARCHAR?
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #36655419
victor16
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
yackС кривизной драйвера согласен полностью.
Дык вроде OAT использует Informix-PDO, а OAT сейчас входит в стандартную поставку. Никто не пытался выдернуть оттуда этот драйвер?
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #36660850
yack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема не с PDO а с PHP-драйвером Informix'a
...
Рейтинг: 0 / 0
PHP + INFORMIX, при обращении к lvarchar ошибка
    #36661080
victor16
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Честно говоря думал, что для связи PHP+Informix надо использовать Informix PDO или IBM PDO .

Посмотрите еще статьи на DeveloperWorks:
1. Google Maps API, DB2/Informix и PHP на Linux
2. Пошаговое руководство по установке, настройке и тестированию сервера Linux, Apache, Informix и PHP
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Informix [игнор отключен] [закрыт для гостей] / PHP + INFORMIX, при обращении к lvarchar ошибка
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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