Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A modern képernyőalapú alkalmazásokban a felhasználó hátrafelé görget és végighalad az adatokon. Az ilyen alkalmazások esetében a korábban beolvasott sorba való visszatérés probléma. Az egyik lehetőség az, hogy bezárja és újra megnyitja a kurzort, és beolvassa a sorokat, amíg a kurzor el nem éri a szükséges sort. Egy másik lehetőség az eredményhalmaz olvasása, helyi gyorsítótárazása és a görgetés implementálása az alkalmazásban. Mindkét lehetőség csak kis eredményhalmazokkal működik jól, és az utóbbi lehetőség nehezen valósítható meg. Jobb megoldás egy görgethető kurzor használata, amely az eredményhalmazban előre-hátra mozoghat.
A görgethető kurzort gyakran használják olyan modern képernyőalapú alkalmazásokban, amelyekben a felhasználó végiggörget az adatokon. Az alkalmazásoknak azonban csak akkor érdemes görgethető kurzorokat használniuk, ha a csak előre mutató kurzorok nem végzik el a feladatot, mivel a görgethető kurzorok általában drágábbak, mint a csak előre mutató kurzorok.
A visszafelé mozgatás lehetősége olyan kérdést vet fel, amely nem alkalmazható a csak előre mutató kurzorokra: Észleli-e a görgethető kurzor a korábban beolvasott sorok módosításait? Vagyis észlelnie kell a frissített, törölt és újonnan beszúrt sorokat?
Ez a kérdés azért merül fel, mert az eredményhalmaz definíciója – az egyes feltételeknek megfelelő sorok – nem jelzi, hogy a sorok mikor vannak ellenőrizve, hogy megfelelnek-e az adott feltételnek, és azt sem határozza meg, hogy a soroknak minden beolvasáskor ugyanazokat az adatokat kell-e tartalmazniuk. A korábbi kihagyás lehetővé teszi, hogy a görgethető kurzorok észleljék, hogy a sorok be lettek-e szúrva vagy törölve, míg az utóbbi lehetővé teszi számukra a frissített adatok észlelését.
A változások észlelésének képessége néha hasznos, néha nem. Egy könyvelési alkalmazásnak például olyan kurzorra van szüksége, amely figyelmen kívül hagyja az összes módosítást; a könyvek kiegyensúlyozása lehetetlen, ha a kurzor a legújabb változásokat jeleníti meg. Másrészt egy légitársaság foglalási rendszerének szüksége van egy kurzorra, amely megjeleníti az adatok legújabb változásait; ilyen kurzor nélkül folyamatosan újra le kell kérdeznie az adatbázist, hogy a leg up-to-date flight rendelkezésre állását jelenítse meg.
A különböző alkalmazások igényeinek kielégítése érdekében az ODBC négy különböző típusú görgethető kurzort határoz meg. Ezek a kurzorok költségben és az eredményhalmaz változásainak észlelésében is eltérőek. Vegye figyelembe, hogy ha egy görgethető kurzor képes észlelni a sorok módosításait, csak akkor észleli őket, amikor megpróbálja újraküldni ezeket a sorokat; Az adatforrás nem értesítheti a kurzort az aktuálisan lekért sorok módosításairól. Vegye figyelembe, hogy a változások láthatóságát a tranzakcióelkülönítési szint is szabályozza; további információ: Tranzakcióelkülönítés.
Ez a szakasz a következő témaköröket tartalmazza.