Érvényességi szabály létrehozása mező adatainak érvényesítésére

Érvényességi szabály létrehozása mező adatainak érvényesítésére

Az asztali Access-adatbázisokban az érvényességi szabályokkal már a bevitel során ellenőrizheti a rögzített adatokat. A Kifejezésszerkesztő használata segíthet a szabály megfelelő formázásában. Az érvényesítési szabályok a Táblatervező nézetben vagy a tábla Adatlap nézetében állíthatók be. Az Accessben háromféle érvényességi szabály van:

1. Mezőérvényesítési szabály:    A mezőérvényesítési szabályokkal olyan feltételeket adhat meg, amelyeknek minden érvényes mezőértéknek meg kell felelnie. Az aktuális mezőt csak akkor kell megadnia a szabály részeként, ha a mezőt egy függvényben használja.  A mezőkbe beírható karakterek típusára vonatkozó korlátozások egyszerűbben megadhatók egy beviteli maszk használatával. Egy dátum mezőhöz például tartozhat egy olyan érvényesítési szabály, amely nem engedélyezi a múltbeli dátumokat.

Példák:

Múltbeli dátumértékek letiltása: >=Date()

Általánosan elfogadott e-mail-formátum: Is Null OR ((Like "*?@?*.?*") AND (Not Like "*[ ,;]*"))

Ötnél kisebb vagy azzal egyenlő szám: <=5

A Pénznem mező értéke nem lehet negatív szám: >=0

Karakterhossz korlátozása karakterláncban: Len([KarakterláncMezőjénekNeve])<100

Mezőérvényesítési szabály az Access Táblatervezőjében

2. Rekordérvényesítési szabály:    A rekordérvényességi szabályokkal meghatározhat egy feltételt, amelyet minden rekordnak ki kell elégítenie ahhoz, hogy érvényes legyen. Ezenkívül összehasonlíthatja különböző mezők értékeit. Egy két dátum mezőből álló rekord esetén például az érvényességi szabály megkövetelheti, hogy az egyik mező értéke korábbi legyen a másik mező értékénél (például a Kezdési dátum értékének meg kell előznie a Befejezési dátum értékét).

Példák:

A befejezési dátum nem lehet korábbi a kezdési dátumnál: [Befejezési dátum]>=[Kezdési dátum]

Az igényelt dátum legfeljebb 30 nappal lehet későbbi a rendelési dátumnál: [IgényeltDátum]<=[RendelésiDátum]+30

Táblaérvényesítési szabály az Access Táblatervezőjében

3. Űrlap érvényességének ellenőrzése:    Az űrlapok vezérlőelemeinek Érvényességi szabály tulajdonságában meghatározhat egy feltételt, amelyet az adott vezérlőelemmel megadott értékeknek teljesíteniük kell. Az Érvényességi szabály vezérlőtulajdonság a mezőérvényesítési szabályhoz hasonlóan működik. Általában akkor érdemes űrlap-érvényesítési szabályt használni mezőérvényesítési szabály helyett, ha a szabály csak az adott űrlapra vonatkozik, és nem a táblára, függetlenül attól, hogy hol lett felhasználva.

Tartalom

Áttekintés

Ez a témakör a táblamezőkben és űrlap-vezérlőelemekben megadott érvényességi szövegek és érvényességi szabályok használatának módját ismerteti. Az érvényességi szabály olyan eszköz, amellyel korlátozható, hogy milyen adatok adhatók meg a táblamezőkben vagy az űrlapon elhelyezett vezérlőelemekben, például egy szövegmezőben. Az érvényesítési szöveggel üzenetet jeleníthet meg a felhasználóknak, hogy megkönnyítse számukra az érvényes adatok bevitelét.

Az adatok bevitelekor az Access ellenőrzi, hogy a bevitel sérti-e valamelyik érvényességi szabályt. Ha igen, akkor nem fogadja el, hanem egy üzenetet jelenít meg.

Az Access többféle módszert kínál az adatbevitel korlátozására:

  • Adattípusok:    Minden táblamezőnek van egy adattípusa, amely korlátozza, hogy a felhasználók mit írhatnak be. Egy Dátum/idő típusú mezőben például csak dátum és időpont adható meg, a Pénznem típusú mezőkben csak pénzösszegek és így tovább.

  • Mezőtulajdonságok:    Egyes mezőtulajdonságok korlátozzák az adatbevitelt. A Mezőméret tulajdonság például korlátozza a bevihető adatok méretét.

    Az Érvényességi szabály tulajdonságokkal meghatározott értékeket követelhet meg, az Érvényesítési szöveg tulajdonsággal pedig figyelmeztetheti a felhasználókat az esetleges hibákra. Ha például a >100 And <1000 szabályt adja meg az Érvényességi szabály tulajdonság értékeként, azzal arra kényszeríti a felhasználókat, hogy 100 és 1000 közötti értékeket adjanak meg. Egy [BefejezésiDátum]>=[KezdésiDátum] alakú szabállyal pedig megkövetelheti, hogy a felhasználók a kezdési dátumnál későbbi befejezési dátumot írjanak be. Az Érvényesítési szöveg tulajdonság értékeként olyan szövegeket adhat meg, mint például „100 és 1000 közötti értékeket adjon meg” vagy „A kezdési dátumnál későbbi befejezési dátumot adjon meg”, így közölheti a hibás adatot beíró felhasználókkal, hogy hogyan javíthatják ki a hibát.

  • Beviteli maszkok:    Az adatok érvényességét beviteli maszkokkal is ellenőrizheti. Ezek meghatározott formátumot írnak elő az adatot beíró felhasználók számára. Beviteli maszkkal írható elő például, hogy a felhasználók európai formátumban (2007.04.14) adják meg a dátumokat.

Ezeket az adatérvényességi szabályokat önmagukban és egymással kombinálva is használhatja. Az adattípusok által támasztott követelményeket kötelező betartani, ezek jelentik az adatérvényesség legalapvetőbb szintjét.

Az adattípusokkal, mezőméretekkel és beviteli maszkokkal kapcsolatos további tudnivalók az Adattípusok és mezőtulajdonságok – Bevezetés című témakörben olvashatók.

Az érvényességi szabályok típusai

Az érvényességi szabályoknak két alaptípusa hozható létre:

  • Mezőérvényesítési szabályok:    A mezőérvényesítési szabályokkal beállíthatja, hogy a program ellenőrizze a beírt adat érvényességét, amikor Ön elhagyja a mezőt. Tegyük fel például, hogy van egy Dátum mező, és Ön beírja a >=#2010.01.01# szabályt a mező Érvényességi szabály tulajdonságába. A szabály ettől kezdve megköveteli, hogy a felhasználók 2010. január 1-je utáni dátumot írjanak be. Ha 2010-nél korábbi dátumot ad meg, majd megpróbálja egy másik mezőre állítani a fókuszt, akkor az Access mindaddig megakadályozza az aktuális mező elhagyását, amíg ki nem javítja a problémát.

  • Rekordérvényesítési szabályok:    A rekordérvényesítési szabállyal szabályozhatja, hogy mikor mentheti a rekordot (a tábla egy sorát). A mezőérvényesítési szabálytól eltérően a rekordérvényesítési szabály ugyanannak a táblának más mezőire hivatkozik. Rekordérvényesítési szabályt akkor kell létrehozni, ha egy mező értékét egy másik mezőben lévő értékekkel kell összevetnie. Tételezzük fel például, hogy cégének 30 napon belül kell kiszállítania a termékeket, és ha ez nem történik meg, akkor a beszerzési ár egy részét vissza kell térítenie a vevőnek. Ekkor meghatározhat egy rekordérvényesítési szabályt: [IgényeltDátum]<=[RendelésiDátum]+30, amely gondoskodik arról, hogy senki ne írhasson be túl késői szállítási dátumot (amely az IgényeltDátum mezőben szereplő érték).

Ha az érvényességi szabályok szintaxisa rejtélyesnek tűnik, akkor olvassa el a Mi írható egy érvényességi szabályba? című szakaszt, amely magyarázatot ad a szintaxisra, és néhány példát mutat az érvényességi szabályokra.

Hol használhatók érvényességi szabályok?

Az érvényességi szabályokkal a táblamezők és az űrlapokon lévő vezérlőelemek adatait ellenőrizheti. Ha táblákra vonatkozó szabályokat határoz meg, akkor a szabályok az adatok importálására vonatkoznak. Ha táblára vonatkozó érvényességi szabályt szeretne felvenni, akkor nyissa meg a táblát, és használja a menüszalag Mezők lapjának parancsait. Ha űrlapra vonatkozó érvényességi szabályt szeretne felvenni, akkor nyissa meg az űrlapot Elrendezési nézetben, és vegye fel a szabályokat az egyes vezérlőelemek tulajdonságai között.

Az Érvényességi szabály hozzáadása táblához című szakasz elmagyarázza, hogyan vehet fel táblamezőkre vonatkozó érvényességi szabályokat. A témakör későbbi, Adatérvényesítési szabály hozzáadása űrlapon elhelyezett vezérlőelemhez szakaszából pedig megtudhatja, hogy miként vehet fel szabályokat az egyes vezérlőelemek tulajdonságai közé.

Mi írható egy érvényességi szabályba?

Az érvényességi szabály kifejezéseket tartalmazhat – olyan függvényeket, amelyek egyetlen értéket adnak vissza. A kifejezésekkel számítások hajthatók végre, karakterek kezelhetők, és adatok vizsgálhatók. Az érvényességi szabályok kifejezései adatokat vizsgálnak. Egy kifejezéssel egyenként ellenőrizhetők egyebek mellett egy adatsor értékei, például "Tokió" Or "Moszkva" Or "Párizs" Or "Helsinki". A kifejezésekkel matematikai műveletek és végezhetők. A <100 kifejezés például előírja a felhasználóknak, hogy 100-nál kisebb értékeket adjanak meg. A ([RendelésiDátum] - [SzállításiDátum]) kifejezéssel kiszámítható, hogy hány nap telik el a megrendelés leadása és a kiszállítás időpontja között.

A kifejezések használatáról a Kifejezés készítése című cikk nyújt részletes tájékoztatást.

Vissza a lap tetejére

Érvényességi szabály hozzáadása táblához

Mezőérvényesítési és rekordérvényesítési szabályt is hozzáadhat. A mezőérvényesítési szabály egy mezőbe beírt adatokat ellenőrzi akkor, amikor a fókusz elhagyja a mezőt. A rekordérvényesítési szabály egy vagy több mezőbe beírt adatokat ellenőriz akkor, amikor a fókusz elhagyja a rekordot. A rekordérvényesítési szabályok általában két vagy több mező értékeit hasonlítják össze.

Megjegyzések: A következő mezőtípusokban nem alkalmazhatók érvényességi szabályok:

  • Számláló

  • OLE-objektum

  • Melléklet

  • Replikációs azonosító

Mezőérvényesítési szabály létrehozása

  1. Jelölje ki azt a mezőt, amelynek ellenőrizni szeretné az érvényességét.

  2. Kattintson a Mezők lap Mező érvényesítése csoportjában az Érvényesítés pontra, majd kattintson a Mezőérvényesítési szabály pontra.

  3. Hozza létre a szabályt a Kifejezésszerkesztő segítségével. A Kifejezésszerkesztő használatával kapcsolatos további tudnivalók A Kifejezésszerkesztő használata című témakörben olvashatók.

Érvénytelen mezőadatok bevitele esetén megjelenítendő üzenet létrehozása

  1. Jelölje ki azt a mezőt, amelynél üzenetet szeretne megjeleníteni, ha érvénytelen adatokat visznek be. A mezőnek már rendelkeznie kell érvényességi szabállyal.

  2. Kattintson a Mezők lap Mező érvényesítése csoportjában az Érvényesítés pontra, majd kattintson a Mezőérvényesítési üzenet pontra.

  3. Adjon meg egy alkalmas üzenetet. Ha az érvényességi szabály például >10, akkor az üzenet lehet például a következő: „10-nél kisebb értéket adjon meg.”

Az Érvényességi szabályok – Referencia című szakaszban láthat néhány példát a mezőérvényesítési szabályokra és üzenetekre.

Rekordérvényesítési szabály létrehozása

  1. Nyissa meg azt a táblát, amelynek rekordjait érvényesíteni szeretné.

  2. Kattintson a Mezők lap Mező érvényesítése csoportjában az Érvényesítés pontra, majd kattintson a Rekordérvényesítési szabály pontra.

  3. Hozza létre a szabályt a Kifejezésszerkesztő segítségével. A Kifejezésszerkesztő használatával kapcsolatos további tudnivalók A Kifejezésszerkesztő használata című témakörben olvashatók.

Érvénytelen rekordadatok bevitele esetén megjelenítendő üzenet létrehozása

  1. Nyissa meg azt a táblát, amelynél üzenetet szeretne megjeleníteni, ha érvénytelen adatokat visznek be. A táblának már rendelkeznie kell rekordérvényesítési szabállyal.

  2. Kattintson a Mezők lap Mező érvényesítése csoportjában az Érvényesítés pontra, majd kattintson a Rekordérvényesítési üzenet pontra.

  3. Adjon meg egy alkalmas üzenetet. Ha az érvényességi szabály például [KezdésiDátum]<[BefejezésiDátum],akkor az üzenet lehet például „A kezdési dátumnak korábbinak kell lennie a befejezési dátumnál.”

Vissza a lap tetejére

Meglévő adatok vizsgálata új érvényességi szabály alapján

Ha meglévő táblához vesz fel érvényességi szabályt, akkor bizonyára meg szeretné vizsgálni, hogy a meglévő adatok érvényesek-e a szabály alapján.

  1. Nyissa meg Tervező nézetben azt a táblát, amelyet vizsgálni szeretne.

    Kattintson a Tervezés lap Eszközök csoportjának Érvényességi szabályok ellenőrzése pontjára.

  2. Kattintson az Igen gombra a figyelmeztető üzenet bezárásához és a vizsgálat indításához.

  3. Ha a program a tábla mentését kéri, akkor kattintson az Igen gombra.

  4. A vizsgálat során további különféle figyelmeztető üzenetek jelenhetnek meg. Olvassa el az egyes üzenetekhez tartozó útmutatást, majd az Igen és a Nem lehetőség közül választva folytassa vagy állítsa le a vizsgálatot.

Vissza a lap tetejére

Adatérvényesítési szabály hozzáadása űrlapon elhelyezett vezérlőelemhez

Az Érvényességi szabály tulajdonságot és Érvényesítési szöveg tulajdonságot űrlap-vezérlőelemekben is használhatja a vezérlőelemekkel bevitt adatok ellenőrzésére, illetve a felhasználók segítésére, ha az általuk bevitt adatok nem érvényesek.

Tipp:  Ha egy táblából automatikusan hoz létre űrlapot a menüszalag Űrlap csoportjának valamelyik parancsával, akkor az űrlap megfelelő vezérlőelemei öröklik a tábla megfelelő mezőihez tartozó érvényességi szabályokat.

Egy vezérlőelemnek a hozzá kötődő táblamező érvényességi szabályától eltérő érvényességi szabálya is lehet. Ez akkor hasznos, ha az űrlapon szigorúbb korlátozásokat szeretne alkalmazni, mint a táblában. A program először az űrlap szabályát alkalmazza, és csak azután a tábla szabályát. Ha a tábla szabálya szigorúbb, mint az űrlapé, akkor a táblamezőre meghatározott szabály előnyt élvez a másik szabállyal szemben. Ha egymást kölcsönösen kizáró szabályokat ad meg, azzal mindennemű adatbevitelt megakadályoz.

Tegyük fel például, hogy egy tábla dátum mezőjére a következő szabályt alkalmazza:

<#2010.01.01#

Utána viszont a következő szabályt alkalmazza a dátum mezőhöz kötött űrlap-vezérlőelemre:

>=#2010.01.01#

A dátum mező mostantól csak a 2010. évnél korábbi értékeket, míg az űrlap vezérlőeleme csak az adott évi vagy későbbi dátumokat fogad el, tehát semmilyen adatot nem lehet megadni.

Vezérlőelemre vonatkozó érvényességi szabály létrehozása

  1. Kattintson a jobb gombbal arra az űrlapra, amelyet módosítani szeretné, majd kattintson az Elrendezési nézet parancsra.

  2. Kattintson a jobb gombbal arra a vezérlőelemre, amelyet módosítani szeretne, majd a Tulajdonságok menüpontra kattintva nyissa meg a vezérlőelem tulajdonságlapját.

  3. Kattintson az Összes fülre, majd írja be az érvényességi szabályt az Érvényességi szabály tulajdonságmezőbe.

    Tipp:  Indítsa el a Kifejezésszerkesztő eszközt az Összeállítás gombra kattintva.

    A Kifejezésszerkesztő használatával kapcsolatos további tudnivalók A Kifejezésszerkesztő használata című témakörben olvashatók.

  4. Írjon be egy üzenetet az Érvényesítési szöveg tulajdonságmezőbe.

Vissza a lap tetejére

Érvényességi szabályok – Referencia

Az érvényességi szabályok az Access-kifejezések szintaxisát követik. A kifejezésekről A kifejezések – bevezetés című cikkben talál további tudnivalókat.

Néhány példa az érvényesítési szabályok és az érvényesítési szövegek alkalmazására

Érvényességi szabály

Érvényesítési szöveg

<>0

Nullától különböző értéket adjon meg.

>=0

Az értéknek nullának vagy nullánál nagyobbnak kell lennie.

vagy

Pozitív számot kell megadnia.

0 or >100

Az értéknek nullának vagy 100-nál nagyobbnak kell lennie.

BETWEEN 0 AND 1

Százalékjeles értéket adjon meg. (Olyan mező esetén használható, amely százalékként tárolja a számértékeket).

<#2007.01.01#

2007 előtti dátumot adjon meg.

>=#2007.01.01# AND <#2008.01.01#

A dátumnak a 2007. évben kell lennie.

<Date()

A születési dátum nem lehet a jövőben.

StrComp(UCase([Vezetéknév]),
[Vezetéknév],0) = 0

A Vezetéknév mezőben csak nagybetűs adatok adhatók meg.

>=Int(Now())

A mai napi dátumot adja meg.

F Or N

Férfi esetén F-et, Nő esetén N-et adjon meg.

LIKE "[A-Z]*@[A-Z].com" OR "[A-Z]*@[A-Z].net" OR "[A-Z]*@[A-Z].org"

Érvényes, .com, .net vagy .org végződésű e-mail címet adjon meg.

[IgényeltDátum]<=[RendelésiDátum]+30

Az igényelt dátum legfeljebb 30 nappal lehet későbbi a rendelési dátumnál.

[BefejezésiDátum]>=[KezdésiDátum]

A kezdési dátummal megegyező vagy annál későbbi befejezési dátumot kell megadnia.

Példák az érvényességi szabályok általános operátorainak szintaxisára

Operátor

Funkció

Példa

NOT

Halmazon kívüli értékek vizsgálatára szolgál. Az IS NOT NULL kivételével bármilyen összehasonlító operátor előtt használható.

NOT > 10 (ugyanaz, mint a <=10)

IN

Azt vizsgálja, hogy az érték szerepel-e egy lista meglévő értékei között. Az összehasonlítandó értékeket zárójelek között, vesszővel elválasztva kell megadni.

IN ("Tokió","Párizs","Moszkva")

BETWEEN

Azt vizsgálja, hogy az érték megadott értéktartományba esik-e. Két összehasonlítási értéket kell megadnia – egy alsó és egy felső korlátot – közöttük pedig az AND operátort kell használnia.

BETWEEN 100 AND 1000 (ugyanaz, mint a >=100 AND <=1000)

LIKE

Szöveg és Feljegyezés típusú mezők karakterláncát egyezteti egy karaktermintázattal.

LIKE "Geo*"

IS NOT NULL

Érték megadására kényszeríti a felhasználókat. Ez ugyanaz, mintha a Kötelező mezőtulajdonságot az Igen értékre állítja. Ugyanakkor ha a Kötelező tulajdonságot engedélyezi, és egy felhasználó nem ír be értéket, akkor az Access egy meglehetősen barátságtalan hibaüzenetet jelenít meg. Az adatbázis általában könnyebben használható, ha az IS NOT NULL szabályt használja, és az Érvényesítési szöveg tulajdonságban megad egy felhasználóbarát üzenetet.

IS NOT NULL

AND

Azt fejezi ki, hogy az érvényességi szabály minden részének teljesülnie kell.

>= #2007.01.01# AND <=#2008.03.06#

Megjegyzés: Az AND operátort érvényességi szabályok összevonására is használhatja. Például: NOT "EK" AND LIKE "E*".

OR

Azt fejezi ki, hogy az érvényességi szabály valamelyik részének teljesülnie kell, de nem mindegyiknek.

január OR február

<

Kisebb mint.

<=

Kisebb mint vagy egyenlő.

>

Nagyobb mint.

>=

Nagyobb mint vagy egyenlő.

=

Egyenlő.

<>

Nem egyenlő.

Helyettesítő karakterek használata érvényességi szabályokban

Az érvényességi szabályokban használhatók helyettesítő karakterek. Ne feledje, hogy az Access a helyettesítő karakterek két csoportját támogatja: az ANSI-89 és az ANSI-92 jelű szabványt. A két szabvány különböző helyettesítő karaktereket alkalmaz.

Alapértelmezés szerint minden .accdb és .mdb kiterjesztésű fájl az ANSI-89 szabványt alkalmazza.

Ha egy adatbázis ANSI szabványát módosítani szeretné az ANSI-92 szabványra, akkor tegye a következőket:

  1. A Fájl lapon kattintson a Beállítások gombra.

  2. Kattintson Az Access beállításai párbeszédpanel Objektumtervezők pontjára.

  3. A Lekérdezéstervező szakasz SQL Server-kompatibilis szintaxis (ANSI 92) beállítása alatt jelölje be az Ebben az adatbázisban jelölőnégyzetet.

A helyettesítő karakterek használatával és az SQL nyelvre érvényes ANSI szabványokkal kapcsolatos további tudnivalók Az Access által használt helyettesítő karakterek című témakörben olvashatók.

Vissza a lap tetejére

Office-jártasság bővítése
Oktatóanyagok megismerése
Új szolgáltatások listájának lekérése
Részvétel az Office Insider programban

Hasznos volt az információ?

Köszönjük a visszajelzését!

Köszönjük visszajelzését. Jobbnak látjuk, ha az Office egyik támogatási szakemberéhez irányítjuk.

×