< Previous | Next >

2.4. lecke: Az automatikus kulcselőállítás használata

Az előző leckében navigációs szabályokat állított be, melyekkel megbizonyosodhat arról, hogy a felhasználók egyedi azonosítót adnak meg az új minősített hirdetéshez. Ez a folyamat idegesítő és valószerűtlen, mivel semmi szükség arra, hogy a felhasználók próbálgatással találjanak egyedi azonosítót. Ebben a leckében beállítja az automatikus kulcselőállítást, így az adatbázis automatikusan egyedi kulcsot rendel minden egyes új rekordhoz.

Az automatikus kulcselőállítás egy bonyolult témakör, de röviden megfogalmazva, egy adatbázis akkor választhat új kulcsokat, ha rendelkezik egy speciális, a kulcselőállításnak fenntartott táblával. A táblázat egyik oszlopában a nem használt kulcsok listájának kell lennie (a növekmény oszlop), a másikban pedig egy 1-től induló számsorozatnak (az azonosság oszlop). Amikor az adatbázisnak egy új kulcsra van szüksége, akkor az azonosság oszlop 1 értékével egy sorban lévő kulcsot kiveszi, így kap egy új kulcsot, amely kész a következő időpontra.

Az automatikus kulcselőállítás beállításához meg kell tudnia néhány dolgot a működéséről. Az automatikus kulcselőállítás használatához az adatbázisnak rendelkeznie kell külön erre a célra egy táblával. Ennek a táblának két oszlopa van:
  • A növekmény oszlop tárolja a rendelkezésre álló kulcsokat. Amikor egy adatbázisnak egyedi kulcsra van szüksége, ebből az oszlopból kérdez le egyet.
  • Az azonosság oszlop olyan számok listája, melyekben csak egyszer szerepel az 1. Ez az oszlop mondja meg az adatbázisnak, hogy melyik kulcsot válassza a növekmény oszlopból. Az azonosság oszlop a kulcselőállítási tábla elsődleges kulcsa.

Amikor az adatbázisnak új egyedi kulcsra van szüksége, akkor megkeresi az 1-es értékű azonosságoszlophoz tartozó sort. Ennek a sornak a növekmény oszlopa tartalmazza a következő rendelkezésre álló kulcsot. Az adatbázis ezt a kulcsot használja, és frissíti a táblát, így legközelebb egy új kulcs áll rendelkezésre.

Íme egy példa a kulcselőállítási táblára. Melyik az adatbázis következő rendelkezésre álló kulcsa? A válasz a tábla alatt van.
Table 1. Kulcselőállítási tábla
Azonosság oszlop Növekmény oszlop
3 78
4 3
1 65
2 12
A következő rendelkezésre álló kulcs ebben a táblában a 65, mivel a (növekmény oszlopban levő) kulcs ugyanabban a sorban van, mint az 1 az azonosság oszlopban.

Miután a következő rendelkezésre álló kulcs lehívódik a táblából, a tábla frissül a következő lekérésre. Az adatbázis egyszerre több kulcsot is lekérhet, ha több sor növekmény értékét kéri.

Röviden: ahhoz, hogy működjön az automatikus kulcselőállítás, mindössze egy kétoszlopos táblára van szüksége, amiben az elsődleges kulcs oszlop az azonosság oszlop, a másik pedig a következő rendelkezésre álló kulcsot tárolja. A tábla inicializálása egy rekorddal történik, aminek az azonosság oszlop értéke 1, és aminek a növekmény oszlopa a következő rendelkezésre álló kulcsot tartalmazza. Ezek beállítása után már használhatja az automatikus kulcselőállítást.

Az automatikus kulcselőállítás beállítása

Az ismertetőhöz biztosított példaadatbázis rendelkezik egy KEYS nevű kulcselőállítási táblázattal. Ennek két oszlopa fogja a fent meghatározott módon biztosítani minden egyes új rekord új azonosítószámát. A következő lépések elvégzésével a create_record relációs rekordot fogja beállítani, hogy kivegye az azonosítószámát a KEYS táblázatból.
  1. Kattintson duplán a new_record.jsp oldalra a Projektböngésző nézetben.
  2. Kattintson duplán a create_record relációs rekordra az Oldaladatok nézetben. Megjelenik a Relációs rekord beállítása ablak.
  3. Kattintson a Meglévő rekordok vagy rekordlisták metaadatainak újrafelhasználása melletti jelölőnégyzetre, és a Rekord feltöltése az adatbázis meglévő adataival melletti választógombra, majd a Tovább gombra.
  4. Válassza ki az adatbáziskapcsolatot a legördülő listából, és kattintson a Tovább gombra.
  5. A Relációs rekord beállítása ablak jobb oldalán hivatkozások listája van. Kattintson az Automatikus kulcselőállítás hivatkozásra. Megjelenik a Kulcselőállítás ablak.
  6. Válassza az Automatikus kulcselőállítás használata lehetőséget.
  7. Kattintson a W5SAMPLE lista kibontásához, majd a KEYS táblára.
  8. Az Azonosságoszlop kiválasztása mezőben kattintson a KEY_ID lehetőségre.
  9. A Növekményoszlop kiválasztása mezőben kattintson a NEXT_KEY lehetőségre.

    Mivel csak egy kulcsra van szüksége a hirdetés azonosítójához, az "Egyszerre lekért kulcsok" értékét hagyja 1-en. Ha több kulcsra van szüksége, akkor az adatbázis ezzel a beállítással az összeset egyszerre jelöli ki.

    Az Adatobjektum beállítása ablaknak a következőképpen kell kinéznie:

    Adatobjektum beállítása ablak

  10. Kattintson a Bezárás gombra a Kulcselőállítás ablak bezárásához, majd a Befejezés gombra a módosítások alkalmazásához. Mostantól minden új rekord esetén automatikusan állítódik elő az azonosító mező. Most el kell távolítania az azonosító beviteli mezőt, hogy a felhasználó ne adhasson meg értéket.
  11. Az Azonosító: szövegre kattintva helyezze a kurzort a beviteli űrlap táblázat felső sorába.
  12. Kattintson a Tábla > Törlés > Sor törlése menüpontra.
  13. Mentse az oldalt.
Esetlegesen, ha szeretné megtekinteni, hogy milyen kulcs lett előállítva a számára, akkor törölheti az Azonosítószám beviteli összetevőjét, és kicserélheti azt egy kimeneti összetevőre, amely a create_record Azonosító oszlopához kötött. Ebben az esetben az automatikusan előállított kulcs megjelenne az űrlap tetején, de a felhasználó nem tudná módosítani azt.

A kész ismertető tesztelése

Amennyiben készen áll a webalkalmazás közzétételére, szüksége lesz egy kiszolgálóra, amely annak hosztja lesz, és így a felhasználók hozzáférhetnek majd az Internetet keresztül. A webhely teszteléséhez azonban használhat egy rendelkezésre álló futási környezetet egy kiszolgáló szimulálásához. A webhely tesztelésének leírása: 1.3. lecke: A webhely tesztelése.

Előadás ellenőrzési pont

Befejezte a 2.4-es leckét. Megtanulta, hogy lehet beállítani az automatikus kulcselőállítást.

< Previous | Next >