jdbc + большой запрос postgresql дают из памяти

Я не соглашаюсь с tuinstoel. Важный вопрос состоит в том, обеспечивает ли функциональный язык более быстрое время разработки и приводит к более быстрому коду, когда он привык к тому, какие функциональные языки были предназначены, чтобы использоваться. Посмотрите раздел проблем эффективности по Википедии для проблеска того, что я имею в виду.

10
задан kresjer 1 October 2009 в 14:36
поделиться

2 ответа

Ой, это одна из самых неприятных ошибок при использовании JDBC, которые я видел. Вам следует заменить

st = connection.createStatement(
  ResultSet.CONCUR_READ_ONLY,
  ResultSet.TYPE_FORWARD_ONLY
);

на

st = connection.createStatement(
  ResultSet.TYPE_FORWARD_ONLY,
  ResultSet.CONCUR_READ_ONLY
);

. Может быть, просто

st = connection.createStatement();

тоже подойдет (поскольку вы выполнили другие критерии для курсора).

8
ответ дан 3 December 2019 в 18:34
поделиться

Здесь приведены рекомендации по обеспечению фактического получения набора результатов с помощью курсора. Кажется, вы нашли все известные в своем коде, но вы не указали оператор, поэтому он может быть несколько соединен точками с запятой (маловероятно, судя по виду вашего кода). Вы должны использовать протокол V3 (версия 7.4 или новее). Применимо ли все это к вашему делу?

13
ответ дан 3 December 2019 в 18:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: