|
|
Stránkování dat z MySQL v aplikaci
|
9.9.2010 11:41
Petr Hložek
|
Dobrý den,
mám aplikaci, která pracuje s daty v MySQL. Jedna tabulka má kolem 100k záznamů a já bych rád tyto záznamy zobrazil postupně uživateli.
Mé řešení:
Po spuštění aplikace zobrazím prvních 500 záznamů. Když uživatel začne rolovat v gridu a dostane se na konec, načtu následujících 500 záznamů. Pokud se vrací zpět, načtu předchozí záznamy atd. Funguje to velice pěkně a rychle. Používám na to LIMIT a OFFSET. Je tu ale problém.
Tabulka je nějak setříděná. Uživatel chce editovat záznam. Pokud opraví položku, podle které se tabulka třídí, položka se posune na jinou pozici, takže se dostane mimo hranice stanovené LIMIT a OFFSET. Jak se mám na tento záznam po ukončení editace vrátit? Jak mám zjistit, kterou stránku mu mám pomocí LIMIT a OFFSET zobrazit (kurzor na záznam už pak přesunu pomocí sekvenčního vyhledání pod ID)? Máte, prosím, nějaký nápad?
Díky moc!
Petr |
|
|
Re: Stránkování dat z MySQL v aplikaci
|
11.9.2010 17:32
Miloslav Ponkrác
|
Jednoduše si zjisti, kolik záznamů je před ním. Tím zjistíš, na kolikátém pořadí má záznam být a stránku už máš hned.
SELECT COUNT(*) as poradi FROM xxx WHERE tridici_polozka < moje_hodnota
Sloupec poradi pak urcuje kolik zaznamu je před TVým zeditovaným.
A zbytek je jasný. |
|
|
|
|
KOMENTARZE
|
Tylko zarejestrowani użytkownicy mogą dopisywać komentarze.
|
|
Szukanie oprogramowania
|
©Pavel Kysilka - 2003-2024 |
maillinuxsoft.cz | Design:
www.megadesign.cz
|