Общий просмотрщик для разбитых на страницы запросов SELECT sql - PullRequest
1 голос
/ 08 декабря 2011

Я создаю веб-страницу, где пользователь может выбрать источник данных и выполнить операторы выбора и увидеть разбитые на страницы результаты в табл. Теперь для разбивки на страницы я обертываю запросы, чтобы получить общее количество строк и rownum для извлечения определенного блока строк.

Поскольку мы добавляем поддержку все большего количества баз данных, все становится сложнее, поскольку не все серверы БД поддерживают одинаковый синтаксис для sql.

В таких средах IDE, как netbeans, в которых есть средства просмотра результатов sql, они могут отображать результаты запроса «SELECT» в виде страниц.

Поэтому хотелось узнать, как это можно сделать в общем виде или как это делают в IDE.

Ответы [ 2 ]

1 голос
/ 08 декабря 2011

Многие базы данных поддерживают нумерацию страниц с чем-то вроде этого (WHERE ROW_ID >= 30 and ROWNUM <= 10) - (это просто абстрактный пример, посмотрите на спецификацию вашей БД). Хороший способ не беспокоиться о разбиении на страницы - использовать некоторые фреймворки, такие как Hibernate :

например. Вы можете использовать методы Criteria.setFirstResult() и Criteria.setMaxresults()

0 голосов
/ 19 февраля 2012

в оракуле, по крайней мере, вы можете сделать

select count(1) from...

если ничего не помогает это означает, что вы дважды запускаете команду select, чтобы посмотреть, сколько там результатов
что не здорово, но может быть более эффективным, чем другие варианты

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...