Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
DBD::Pg - установка курсора в селекте на некую позицию
|
|||
|---|---|---|---|
|
#18+
Вот такая вот проблема, имеем на Perl: Код: plaintext теперь требуется установить курсор на некую позицию, ну допустим на 17-ю, и затем начать всё вытаскивать, т.е. что-то типа Код: plaintext 1. 2. 3. 4. Вот так сработает с DBD::Mysql, но на DBD::Pg такого нет. Знаю что есть подобная функция на php, называется "pg_result_seek()". Перерыл всё что возможно и где только возможно, в исходниках php даже рыл, но ничего не нашёл. Решение проблемы через добавление к запросу "LIMIT ... OFFSET ..." не интересует. Предварительно отфетчить 17 позиций тоже не интересует. Нужно именно заставить курсор просто перепрыгнуть на какую-либо запись. Может кто-то всё-таки знает решение данной проблемы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2006, 00:10 |
|
||
|
DBD::Pg - установка курсора в селекте на некую позицию
|
|||
|---|---|---|---|
|
#18+
Только самому отфетчить 16 записей. Либо как обычно (prepare-execute-fetch-fetch-fetch...), либо через серверный курсор. Насколько я знаю, DBD::Pg даже в последней версии серверные курсоры не использует, поэтому делать все придется ручками: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2006, 03:55 |
|
||
|
DBD::Pg - установка курсора в селекте на некую позицию
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Прошу извинить за то, что встрял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2006, 09:45 |
|
||
|
DBD::Pg - установка курсора в селекте на некую позицию
|
|||
|---|---|---|---|
|
#18+
aTz (msk)...теперь требуется установить курсор на некую позицию, ну допустим на 17-ю, и затем начать всё вытаскивать... глупый вопрос.. Вы когда нить задавались вопросом об альтернативе ? ведь есть более быстрый и более оптимальный способ... наводка... 1) Зачем делать то, что может сделать сервак ? 2) Зачем нагружать сетку ? с уважением (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2006, 15:08 |
|
||
|
DBD::Pg - установка курсора в селекте на некую позицию
|
|||
|---|---|---|---|
|
#18+
kolobok0 глупый вопрос.. Вы когда нить задавались вопросом об альтернативе ? ведь есть более быстрый и более оптимальный способ... наводка... 1) Зачем делать то, что может сделать сервак ? 2) Зачем нагружать сетку ? А-по моему очень глупый ответ! Был задан конкретный пример, был задан конкретный вопрос и был получен совершенно не конкретный и ничего не дающий ответ. Об альтернативе я задумываюсь тогда, когда эту альтернативу я могу применить. По пункту номер 1: Что конкретно под этим подразумевается? Сервак много чего может делать, но меня в данном случае не интересует что может делать сервак. По-моему я задал конкретный вопрос по модулю DBD::Pg. Если имеется ввиду та альтернатива, которая приведена выше вашего ответа, то я с ней вполне согласен, но мне это не подходит . Зато Funny_Falcon по-крайней мере предложил что-то конкретное, что может помоч другим людям, за что ему спасибо. По пункту номер 2: По вашему метод $sth->func(17, 'dataseek') работающий для MySQL нагружает сетку? И pg_result_seek() в php тоже это делает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2006, 19:36 |
|
||
|
DBD::Pg - установка курсора в селекте на некую позицию
|
|||
|---|---|---|---|
|
#18+
Прошу прошения, чужие лавры давят голову: я лишь немного поправил фффф ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2006, 12:28 |
|
||
|
DBD::Pg - установка курсора в селекте на некую позицию
|
|||
|---|---|---|---|
|
#18+
aTz (msk) По пункту номер 1: Что конкретно под этим подразумевается? конкретный ответ. практически ЛЮБОЙ сервак SQL МОЖЕТ вернуть ТОЛЬКО ТЕ записи и С ИНТЕРЕСУЮЩЕЙ ВАС ПОЗИЦИИ. aTz (msk) По пункту номер 2: По вашему метод $sth->func(17, 'dataseek') работающий для MySQL нагружает сетку? И pg_result_seek() в php тоже это делает? конкретный ответ. любой ПЕРЕГОН на клиента данных - НАГРУЖАЕТ СЕТКУ. Отсюда видно что ФИТЧ на клиенте - решение быстрое, но качество низкое. удачи Вам (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2006, 17:42 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=33518009&tid=2006667]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
43ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 345ms |

| 0 / 0 |
