Potrzebuję odczytać dane ze wszystkich wierszy dużego stołu, ale nie chcę, aby pobrać wszystkie dane do pamięci w tym samym czasie. Czy istnieje funkcja SQLAlchemy obsługująca stronicowanie? Oznacza to, że przeciągnij kilka wierszy do pamięci, a następnie pobierz więcej, gdy zajdzie taka potrzeba.SQLAlchemy i stronicowania
Rozumiem, że możesz to zrobić z limit
i offset
jako this article sugeruje, ale wolałbym nie obsługiwać tego, jeśli nie muszę.
Wygląda na to, że obsługuje paginację w kontekście renderowania strony internetowej ... Po prostu próbuję rozmawiać z bazą danych, bez nakładki. –
W warstwie bazy danych iteracja "limit" i "offset" jest właściwie najbardziej odpowiednim scenariuszem, dokładnie tak, jak oryginalnie udokumentowano. Wierzę, że uzasadnieniem jest to, co dzieje się z bazą danych _anyway_, w związku z tym równie dobrze możesz podać własną pętlę 'for'. :) – MrGomez
Właściwie, nie, bardzo się mylę. Aktualizuję moją odpowiedź, ponieważ znalazłem bardziej ostateczny zasób. – MrGomez