Использование «курсоров» для подкачки страниц в PostgreSQL [дубликат]
Возможный дубликат:
Как предоставить клиенту API с 1 000 000 результатов базы данных?
Интересно об использованиикурсоры хороший способ реализоватьпейджинг» используя PostgreSQL.
Случай использования состоит в том, что у нас есть более 100 000 строк, которые мыЯ хотел бы сделать доступными для наших клиентов API. Мы думали, что хороший способ сделать это состоял бы в том, чтобы позволить клиенту запрашивать информацию партиями (страницами). Клиент может запросить 100 строк одновременно. Мы бы вернули 100 строк и курсор, затем, когда клиент был готов, они могли запросить следующие 100 строк, используя курсор, который мы им отправили.
Однако я'Немного размыто о том, как работают курсоры и как и когда следует использовать курсоры:
Требуют ли курсоры, чтобы соединение с базой данных оставалось открытым?Работают ли курсоры внутри транзакции, блокируя ресурсы до тех пор, пока они не будутзакрыто"?Есть ли другие?»подводные камни что я'я не в курсе?Есть ли другой, лучший способ справиться с этой ситуацией?Спасибо!