Как я могу преобразовать тип данных CLOB в VARCHAR?или просто минимизировать содержание CLOB, потому что я сталкиваюсь с ошибкой кучи JAVA - PullRequest
0 голосов
/ 31 января 2019

Мне нужно использовать столбец с типом данных CLOB, но он всегда приводит меня к ошибке JAVA Heap.Как я могу конвертировать CLOB в VARCHAR?или как я могу минимизировать количество символов типа данных CLOB?

Я только пробовал использовать это: выберите table.columnname (col, 100) из таблицы

1 Ответ

0 голосов
/ 02 февраля 2019

Когда вы читаете данные из типа данных LOB, ваша JAVA-программа получает bytestream и должна считывать ее в переменную byte[], если с сервера поступает больше данных.

ТеперьКак правило, большие объекты предназначены для больших объемов данных, и ваша клиентская программа должна их обрабатывать.

Одним из способов может быть увеличение размера кучи Java на вашей виртуальной машине (для этого обратитесь к документации вашей виртуальной машины JAVA - обычно это какой-то параметр -X).

Другой вариантпроверять length() значения большого объекта, прежде чем читать его из данных и обрабатывать данные кусками.Например, если вы хотите предварительный просмотр некоторых данных столбцов больших объектов, то читайте только первые 100 КБ или около того и прекращайте чтение после этого.Например, SAP HANA Studio делает это.

В любом случае, ваше приложение должно обрабатывать объем данных, если оно хочет использовать типы данных больших объектов.

...