MSSQL, ODBC, PHP

На днях пришлось сделать сайтик под такое страшное мессиво… Наткнулся на интересную проблему, при SELECT’ах из базы данных данные полей обрезались до 4Kb и обрастали мусором (судя по виду — куски памяти используемой php).
Прогуглив проблему, в итоге нашел рабочее решение данной проблемы.
Делюсь:
нужно установить следующий setting для php.ini

ini_set(”odbc.defaultlrl”,”65535″);

ну и заодно

ini_set(”mssql.textsize”,”65535″);
ini_set(”mssql.textlimit”,”65535″);

если любите стучаться напрямую…



Комментариев: 3

  1. Dimedrol LATVIA Апрель 1, 2008 11:19

    Ужоснах.
    Intranet сайтик, пади…

    Вообще у MSSQL куча подобных косяков.
    Из своей практики могу сказать, что по крайней мере на MSSQL 2000 был трабл, когда char-поля длиной 8000 символов (есть такой тип данных) нельзя использовать внутри stored procedur. Они там обрезаются(!) до 256. Т.е., если нам надо вставить длинную строчку - делаем конкатенацию из нескольких строковых переменных.
    Это, похоже, из той же оперы. (не Oper-ы!!!)

  2. bars LATVIA Апрель 3, 2008 12:31

    Даже после установки text row size??? 8-[ ]

  3. bars LATVIA Апрель 3, 2008 14:04

    Да, и сайтик — не интранет! :D

Оставить комментарий

Будьте вежливы. Ваш е-майл не опубликуется.