Oracle 11g DB возвращает потоки вместо строк

У меня здесь новая база данных, и это обновленная версия Oracle 10g до Oracle 11g - основная проблема связана с столбцами больших объектов, и каждый раз, когда какая-либо функция возвращает в качестве результата LOB, новая база данных не будет возвращать такие строки, как старая:

Старая база данных:

["C"]=>
string(23) "3874163,3874197,3874201"

Новая база данных:

["C"]=>
resource(182) of type (stream)

Теперь при чтении потоков иногда возникает ошибка ссылки на несуществующий ресурс потока, и все не выполняется . Я предполагаю, что соединение тем временем закрыто без чтения потока, и поэтому доступ потерян.

При изменении операторов, чтобы включить приведение к varchar, например:

CONVERT(VARCHAR, C, 120)

Или вот так:

SELECT TO_CHAR(FUNC())

Значение снова возвращается в виде строки, но это не совсем оптимальное решение, так как каждый оператор нужно будет изменить .

Есть ли способ / опция, чтобы предотвратить доставку больших объектов в виде потоков, чтобы они вместо этого доставлялись в виде строк, как в Oracle 10g?

Изменить:
Мы используем набор функций oci для доступа к базе данных.

6
задан bardiir 12 January 2012 в 07:30
поделиться