HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Lapozás tízesével egy SELECT eredménytáblájában


Példaprogram letöltése

13088 bájt

Az SQL SELECT parancsának van egy kapcsolója, a TOP amely segítségével csak az eredménytábla megadott számú sora jelenik meg. Ezt jól használhatjuk akkor, amikor egyszerre csak korlátozott számú rekordot akarunk fogadni. Felvet azonban egy problémát. Mi van akkor, ha a beolvasás után a következő vagy akár az n-dik rekordcsoportra van szükségünk? Ebben a példában erre a kérdésre keresünk megoldást.

A mellékelt példaprogram futtatása előtt a Fom1.cs forráskódban található sqlConnection1 objektum ConnectionString értékét módosítsa úgy, hogy a Northwind példaadatbázis elérhetővé váljon.
Az alábbi SQL utasítás segítségével lekérdezhetjük egy eredménytábla legelső 10 rekordját.
SELECT TOP 10 * FROM Customers
A SELECT utasítás eredménytábláját felhasználhatjuk, de már nincs lehetőségünk elérni a következő 10 darab rekordot. Ez az utasítás arra sem biztosít lehetőséget, hogy mondjuk a harmadik 10-es rekordköteget olvassuk ki az eredménytáblából.
A mellékelt példaprogramban a Northwind adatbázis Customer tábláját használjuk fel. A tábla rekordjain 10-es csoportokban mozgunk előre és hátra.
Ha a SELECT parancs eredménytáblájából az n-edik 10-es köteget akarjuk lekérdezni, akkor azt a következő módon tehetjük meg.
SELECT TOP 10 * FROM Customers
WHERE ContactName NOT IN (SELECT TOP n*10 ContactName FROM Customers)
A beágyazott SELECT utasítás eredménytáblájában szereplő rekordokat nem vesszük figyelembe. Ha az első 10 rekordot akarjuk lekérdezni, akkor az értékének 0-nak kell lennie. Ha a második 10-es rekordköteget kívánjuk lekérdezni, akkor az n értékét 1-re kell állítanunk és így tovább.
A beágyazott SELECT utasításban mindig a lekérdezett mennyiség (ebben a példában 10) többszörösének kell szerepelnie.

Cikksorozat

#IDKategóriaCikk címeSorozat
2535C#Oracle adatbázis-elérés alapjai1. rész
2546C#SQL utasítások végrehajtása2. rész
2557C#Tárolt eljárások és függvények fejlesztése3. rész
2565C#Csomagok fejlesztése4. rész
2573C#Adatbázis triggerek fejlesztése5. rész
2581C#Kivételek kezelése PL/SQL-ben6. rész
3276C#Kurzorok deklarálása PL/SQL-ben7. rész
3297C#Tömb adattípus létrehozása és kezelése PL/SQL-ben8. rész
3326C#Adatbevitel tömb-adattípussal rendelkező oszlopokba9. rész
3357C#Adattárolás beágyazott tábla-típusú oszlopokban10. rész
3388C#Adatok beszúrása beágyazott táblákba11. rész
3418C#Index létrehozása PL/SQL-ben12. rész
3444C#Szekvenciák használata13. rész
3488C#Adatok betöltése állományokból14. rész
1765DelphiOracle adatbázis-elérés alapjai15. rész
1774DelphiSQL utasítások végrehajtása16. rész
1784DelphiTárolt eljárások és függvények fejlesztése17. rész
1794DelphiCsomagok fejlesztése18. rész
1803DelphiAdatbázis triggerek fejlesztése19. rész
1815DelphiKivételek kezelése PL/SQL-ben20. rész
3256DelphiKurzorok deklarálása PL/SQL-ben21. rész
3287DelphiTömb adattípus létrehozása és kezelése PL/SQL-ben22. rész
3318DelphiAdatbevitel tömb-adattípussal rendelkező oszlopokba23. rész
3348DelphiAdattárolás beágyazott tábla típusú oszlopokban24. rész
3377DelphiAdatok beszúrása beágyazott táblákba25. rész
3408DelphiIndex létrehozása PL/SQL-ben26. rész
3436DelphiSzekvenciák használata27. rész
3467DelphiAdatok betöltése állományokból28. rész


Könyv
Ez a cikk megtalálható ebben a könyvben: C# Software Offline 2003 évkönyv 141. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |