Scrollable ResultSet JDBC Postgresql - PullRequest
       9

Scrollable ResultSet JDBC Postgresql

5 голосов
/ 23 ноября 2010

Когда я создаю готовый оператор, подобный этому, в Java (используя JDBC):

pStmt = conn.prepareStatement(qry);

все работает нормально. Однако, когда я хочу прокручиваемый набор результатов и использую это:

pStmt = conn.prepareStatement(qry,ResultSet.TYPE_SCROLL_INSENSITIVE);

Я получаю синтаксическую ошибку:

org.postgresql.util.PSQLException: ERROR: syntax error at or near "RETURNING"

Я даже не использую RETURNING в своем запросе.

Есть идеи?

Любая помощь будет оценена. Спасибо

Обновление: Кажется, работает, если я использую это:

pStmt = db.prepareStatement(qry,ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);

В чем разница между ЧУВСТВИТЕЛЬНЫМ и НЕДОСТАТОЧНЫМ?

Спасибо

Ответы [ 2 ]

4 голосов
/ 23 ноября 2010

Второй параметр prepareStatement должен быть одним из Statement.RETURN_GENERATED_KEYS или Statement.NO_GENERATED_KEYS.

Полагаю, вы хотите использовать

PreparedStatement prepareStatement(String sql,
                                   int resultSetType,
                                   int resultSetConcurrency)
0 голосов
/ 27 октября 2018

ResultSet.TYPE_SCROLL_INSENSITIVE: Предполагается, что результирующий набор не «воспринимает» изменения базы данных, произошедшие после выполнения запроса.

ResultSet.TYPE_SCROLL_SENSITIVE: собирает изменения в базе данных, которые произошли после выполнения запроса

...