Datu ievades ierobežošana, izmantojot validācijas kārtulas
Applies ToAccess pakalpojumam Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Izmantojot validācijas kārtulas, jūs varat Access datora datu bāzēs aizliegt vai validēt datus to ievadīšanas laikā. Varat izmantot izteiksmju veidotāju, lai pareizi formatētu kārtulu. Validācijas kārtulas var iestatīt tabulas noformējuma vai tabulas datu lapas skatā. Programmā Access ir trīs veidu validācijas kārtulas:

1. Lauka validācijas kārtula   . Lauka validācijas kārtulu var izmantot, lai norādītu kritēriju, kam jāatbilst visām derīgaajām lauka vērtībām. Jums nav jānorāda pašreizējais lauks kā daļa no kārtulas, ja vien šo lauku neizmantojat kādā funkcijā.  Laukā ievadāmo rakstzīmju veidu ierobežojumus, iespējams, vieglāk ir izveidot ar ievades maskas palīdzību. Piemēram, datu laukā var būt validācijas kārtula, kas neļauj ievadīt pagātnes vērtības.

Ātri piemēri:

Neatļaut pagātnes datumu vērtības: >=Date()

Vispārēji pieņemams e-pasta formāts: Is Null OR ((Like "*?@?*.? *") AND (Not Like "*[ ,;] *"))

Skaitlis, kas ir mazāks vai mazāks par pieci: <=5

Valūtas lauks nevar būt negatīvs: >=0

Rakstzīmju garuma ierobežošana virknē: Len([StringFieldName])<100

Lauka validācijas kārtula, kas parādīta Access tabulas noformētājā

2. Ieraksta validācijas kārtula   Ieraksta validācijas kārtulu var izmantot, lai norādītu nosacījumu, kam jāatbilst visiem derīgaajiem ierakstiem. Varat salīdzināt vērtības dažādos laukos, izmantojot ierakstu validācijas kārtulu. Piemēram, ierakstā ar diviem datuma laukiem var būt nepieciešams, lai viena lauka vērtības vienmēr ir pirms otra lauka vērtības (piemēram, StartDate ir pirms EndDate).

Ātri piemēri:

Pārliecinieties, vai beigu datums nav pirms sākuma datuma: [Beigu datums]>=[Sākuma datums]

Ievadiet pieprasīto datumu, kas nav vēlāk kā 30 dienas pēc pasūtījuma datuma: [Nepieciešamais_datums]<=[Pasūtījuma_datums]+30

Tabulas validācijas kārtula Access tabulas noformētājā.

3. Validācija   formā Varat izmantot formas vadīklas rekvizītu Validācijas kārtula, lai norādītu kritēriju, kam jāatbilst visām šīs vadīklas ievades vērtībām. Vadīklas rekvizīts Validācijas kārtula darbojas kā lauka validācijas kārtula. Parasti formas validācijas kārtulu izmanto lauka validācijas kārtulas vietā, ja kārtula attiecas tikai uz atbilstošo formu, bet ne uz tabulu neatkarīgi no tā, kur tā tika izmantota.

Šajā rakstā

Pārskats

Šajā rakstā skaidrots, kā izmantot validācijas kārtulas un validācijas tekstu tabulas laukos un formas vadīklās. Validācijas kārtula ir viens no veidiem, kā ierobežot ievadi formas tabulas laukā vai vadīklā (piemēram, tekstlodziņā). Izmantojot validācijas tekstu, jūs varat sniegt norādes, lai palīdzētu lietotājiem, kuri ievada nederīgus datus.

Ievadot datus, Access pārbauda, vai ievade nepārkāpj validācijas kārtulu. Ja kārtula netiek ievērota, ievade netiek pieņemta, un Access parāda ziņojumu.

Access nodrošina vairākus veidus, kā ierobežot ievadi:

  • Datu tipi.   Katram tabulas laukam ir datu tips, kas ierobežo to, ko lietotāji var ievadīt. Piemēram, lauks Datums/laiks akceptē tikai datuma un laika vērtības, savukārt lauks Valūta akceptē tikai vērtības naudas izteiksmē.

  • Lauka rekvizīti.   Daži lauka rekvizīti ierobežo datu ievadi. Piemēram, lauka rekvizīts Lauka lielums ierobežo ievadi, ierobežojot datu daudzumu.

    Jūs varat izmantot arī rekvizītu Validācijas kārtula, lai pieprasītu konkrētas vērtības, un rekvizītu Validācijas teksts, lai brīdinātu lietotājus par kļūdām. Piemēram, rekvizītā Validācijas kārtula ievadot tādu kārtulu kā >100 And <1000, lietotājiem ir jāievada vērtības robežās no 100 līdz 1000. Piemēram, kārtula [EndDate]>=[StartDate] liek lietotājiem ievadīt beigu datumu, kas ir sākuma datums vai datums pēc tā. Rekvizītā Validācijas teksts ievadot tekstu, piemēram, "Ievadiet vērtības robežās no 100 līdz 1000" vai "Ievadiet beigu datumu, kas ir sākuma datums vai datums pēc tā", lietotājiem tiek norādīts, ka ir pieļauta kļūda un kā to labot.

  • Ievades maskas.   Jūs varat izmantot ievades masku, lai validētu datus, liekot lietotājiem ievadīt datus noteiktā veidā. Piemēram, ievades maska var likt lietotājiem ievadīt datus Eiropas formātā, piemēram, 2007.04.14.

Jūs varat izmantot šīs datu validēšanas metodes atsevišķi vai kopā. Datu tipi ir obligāti, un tie nodrošina vienkāršāko datu validācijas veidu.

Papildinformāciju par datu tipiem, lauku lielumiem un ievades maskām skatiet rakstā Iepazīšanās ar datu tipiem un lauku rekvizītiem.

Validācijas kārtulu tipi

Jūs varat izveidot divus galvenos validācijas kārtulu tipus:

  • Lauka validācijas kārtulas.   Izmantojiet lauka validācijas kārtulu, lai pārbaudītu laukā ievadīto vērtību, kad izejat no lauka. Piemēram, jums ir datuma lauks un jūs ievadāt >=#01/01/2010# šī lauka rekvizītā Validācijas kārtula. Kārtula tagad pieprasa lietotājiem ievadīt datumus, sākot no 2010. gada 1. janvāra. Ja ievadāt datumu pirms 2010. gada un pēc tam mēģināt novietot fokusu citā laukā, Access neļauj atstāt pašreizējo lauku, līdz esat novērsis problēmu.

  • Ieraksta validācijas kārtulas.   Izmantojiet ieraksta validācijas kārtulu, lai kontrolētu, kad tiek saglabāts ieraksts (rinda tabulā). Pretēji lauka validācijas kārtulai ieraksta validācijas kārtula attiecas uz citiem laukiem tajā pašā tabulā. Jūs varat izveidot ieraksta validācijas kārtulas, ja jāpārbauda vērtības vienā laukā ar vērtībām citā. Piemēram, jūsu uzņēmumam jānodrošina, ka produkti tiek nosūtīti 30 dienu laikā un, ja produkti netiek nosūtīti noteiktajā laikā, jums jāatlīdzina pasūtītājam daļa no iepirkuma cenas. Jūs varat definēt ieraksta validācijas kārtulu, piemēram, [RequiredDate]<=[OrderDate]+30, lai nodrošinātu, ka netiek ievadīts piegādes datums (vērtība RequiredDate laukā) pārāk tālā nākotnē.

Ja validācijas kārtulu sintakse izskatās šifrēta, skatiet sadaļu Ko var ielikt validācijas kārtulā, kurā izskaidrota sintakse un piedāvāti daži validācijas kārtulu piemēri.

Kur var izmantot validācijas kārtulas

Jūs varat definēt validācijas kārtulas tabulu laukiem un vadīklām formās. Ja definējat kārtulas tabulām, šīs kārtulas tiek izmantotas, importējot datus. Lai tabulai pievienotu validācijas kārtulas, atveriet tabulu un izmantojiet lentes cilnes Tabulas lauki komandas. Lai pievienotu validācijas kārtulas formai, jāatver forma izkārtojuma skatā un jāpievieno kārtulas atsevišķu vadīklu rekvizītiem.

Sadaļā Validācijas kārtulas pievienošana tabulai izskaidrots, kā tabulas laukiem pievienot validācijas kārtulas. Šī raksta sadaļā Validācijas kārtulas pievienošana formas vadīklai izskaidrots, kā atsevišķu vadīklu rekvizītiem pievienot kārtulas.

Ko var ielikt validācijas kārtulā

Validācijas kārtulās var būt izteiksmes — funkcijas, kas atgriež vienu vērtību. Jūs varat izmantot izteiksmi, lai veiktu aprēķinus, manipulētu ar rakstzīmēm vai pārbaudītu datus. Validācijas kārtulas izteiksme pārbauda datus. Piemēram, izteiksme var pārbaudīt vienu vai vairākas vērtības, piemēram, "Tokyo" Or "Moscow" Or "Paris" Or "Helsinki". Izteiksmes var veikt arī matemātiskas darbības. Piemēram, izteiksme <100 liek lietotājiem ievadīt vērtības, kas mazākas nekā 100. Izteiksme ([OrderDate] - [ShipDate]) aprēķina dienu skaitu starp pasūtījuma veikšanas laiku un tā piegādes laiku.

Papildinformāciju par izteiksmēm skatiet rakstā Izteiksmes izveide.

Uz lapas sākumu

Validācijas kārtulas pievienošana tabulai

Jūs varat pievienot lauka validācijas kārtulu un/vai ieraksta validācijas kārtulu. Lauka validācijas kārtula pārbauda lauka ievadi un tiek lietota, ja fokuss vairs netiek vērsts uz lauku. Ieraksta validācijas kārtulas ievades pārbaudes tiek lietotas vienam vai vairākiem laukiem, ja fokuss vairs netiek vērsts uz ierakstu. Parasti ieraksta validācijas kārtula salīdzina divu vai vairāku lauku vērtības.

Piezīmes.: Validācijas kārtulas neatbalsta šādi lauka tipi:

  • Autom_num

  • OLE objekts

  • Pielikums

  • ReplicationID

Lauka validācijas kārtulas izveide

  1. Atlasiet lauku, kuru vēlaties validēt.

  2. Cilnes Tabulas lauki grupā Lauku validācija noklikšķiniet uz Validācija un pēc tam uz Lauka validācijas kārtula.

  3. Izmantojiet izteiksmju veidotāju, lai izveidotu kārtulu. Papildinformāciju par izteiksmju veidotāja izmantošanu skatiet rakstā Izteiksmju veidotāja izmantošana.

Ziņojuma izveide, ko parādīt, ja lauka ievade nav derīga

  1. Atlasiet lauku, kam vajadzīgs ziņojums, ja ievade nav derīga. Laukam jau jābūt ar validācijas kārtulu.

  2. Cilnes Tabulas lauki grupā Lauku validācija noklikšķiniet uz Validācija un pēc tam uz Lauka validācijas ziņojums.

  3. Ievadiet attiecīgu ziņojumu. Piemēram, ja validācijas kārtula ir >10, ziņojums varētu būt šāds: “Ievadiet vērtību, kas ir mazāka par 10.”

Daži lauku validācijas kārtulu un ziņojumu piemēri ir atrodami sadaļā Atsauce uz validācijas kārtulu.

Ieraksta validācijas kārtulas izveide

  1. Atveriet tabulu, kuras ierakstus vēlaties validēt.

  2. Cilnes Tabulas lauki grupā Lauku validācija noklikšķiniet uz Validācija un pēc tam uz Validācijas kārtula.

  3. Izmantojiet izteiksmju veidotāju, lai izveidotu kārtulu. Papildinformāciju par izteiksmju veidotāja izmantošanu skatiet rakstā Izteiksmju veidotāja izmantošana.

Ziņojuma izveide, ko parādīt, ja ieraksta ievade nav derīga

  1. Atveriet tabulu, kam vajadzīgs ziņojums, ja ievade nav derīga. Tabulai jau jābūt ar ieraksta validācijas kārtulu.

  2. Cilnes Tabulas lauki grupā Lauku validācija noklikšķiniet uz Validācija un pēc tam uz Validācijas ziņojums.

  3. Ievadiet attiecīgu ziņojumu. Piemēram, ja validācijas kārtula ir [StartDate]<[EndDate], ziņojums varētu būt šāds: "StartDate jābūt pirms EndDate."

Uz lapas sākumu

Esošu datu pārbaude attiecībā pret jaunu validācijas kārtulu

Ja jūs pievienojat validācijas kārtulu esošai tabulai, iespējams, vēlēsities testēt kārtulu, lai noskaidrotu, vai visi esošie dati ir derīgi.

  1. Noformējuma skatā atveriet tabulu, kuru vēlaties pārbaudīt.

    Cilnes Tabulas noformējums grupā Rīki noklikšķiniet uz Pārbaudīt validācijas kārtulas.

  2. Noklikšķiniet uz , lai aizvērtu brīdinājuma ziņojumu un sāktu pārbaudi.

  3. Ja tiekat aicināts saglabāt tabulu, noklikšķiniet uz .

  4. Turpinot darbu, iespējams, redzēsit daudz citu brīdinājuma ziņojumu. Izlasiet norādījumus katrā ziņojumā un pēc tam attiecīgi noklikšķiniet uz vai , lai pabeigtu vai pārtrauktu pārbaudi.

Uz lapas sākumu

Validācijas kārtulas pievienošana formas vadīklai

Jūs varat izmantot formas vadīklas rekvizītu Validācijas kārtula un Validācijas teksts, lai validētu datus, kas tiek ievadīti attiecīgajā vadīklā, un palīdzētu lietotājiem, kuri ievada nederīgus datus.

Padoms.: Ja formu izveidojat automātiski no tabulas, izmantojot kādu no lentē esošajām formas komandām, attiecīgā formas vadīkla pārmanto visu pamatā esošās tabulas validāciju.

Vadīklā var būt validācijas kārtula, kas atšķiras no tabulas lauka validācijas kārtulas, ar kuru vadīkla ir saistīta. Tas ir noderīgi, ja vēlaties, lai forma būtu ierobežojošāka nekā tabula. Vispirms tiek lietota formas kārtula un pēc tam tabulas kārtula. Ja tabula ir ierobežojošāka nekā forma, tabulai definētā kārtula attiecībā pret tabulas lauku ir primāra. Ja kārtulas ir savstarpēji izslēdzošas, tās neļauj ievadīt datus vispār.

Piemēram, pieņemsim, ka datu laukam tabulā lietojat šādu kārtulu:

<#01/01/2010#

Bet pēc tam formas vadīklai, kas piesaistīta datuma laukam, lietojat šādu kārtulu:

>=#01/01/2010#

Datuma lauks tagad pieprasa vērtības pirms 2010. gada, bet formas vadīkla liek ievadīt datumus, kas ir šajā gadā vai vēlāk, tādējādi neļaujot ievadīt nekādus datus.

Vadīklas validācijas kārtulas izveide

  1. Ar peles labo pogu noklikšķiniet uz formas, ko vēlaties mainīt, un pēc tam noklikšķiniet uz Izkārtojuma skats.

  2. Ar peles labo pogu noklikšķiniet uz vadīklas, kas jāmaina, un pēc tam noklikšķiniet uz Rekvizīti, lai atvērtu vadīklas rekvizītu lapu.

  3. Noklikšķiniet uz cilnes Visi un pēc tam rekvizīta Validācijas kārtula lodziņā ievadiet validācijas kārtulu.

    Padoms.:  Noklikšķiniet uz pogas Kompilēt, lai startētu izteiksmju veidotāju.

    Papildinformāciju par izteiksmju veidotāja izmantošanu skatiet rakstā Izteiksmju veidotāja izmantošana.

  4. Rekvizīta Validācijas teksts lodziņā ievadiet ziņojumu.

Uz lapas sākumu

Atsauce uz validācijas kārtulu

Validācijas kārtulas izmanto Access izteiksmju sintaksi. Papildinformāciju par izteiksmēm skatiet rakstā Ievads par izteiksmēm.

Validācijas kārtulas un validācijas teksta piemēri

Validācijas kārtula

Validācijas teksts

<>0

Ievadiet vērtību, kas nav nulle.

>=0

Vērtībai jābūt nullei vai lielākai.

- vai -

Jāievada pozitīvs skaitlis.

0 or >100

Vērtībai jābūt vai nu 0, vai lielākai par 100.

BETWEEN 0 AND 1

Ievadiet vērtību ar procentu zīmi. (Izmantošanai laukos, kuros skaitliskas vērtības tiek glabātas kā procenti).

<#01/01/2007#

Ievadiet datumu pirms 2007. gada.

>=#01/01/2007# AND <#01/01/2008#

Datumam jābūt 2007. gadā.

<Date()

Dzimšanas datums nevar būt nākotnē.

StrComp(UCase([Uzvārds]), [Uzvārds],0) = 0

Datiem laukā ar nosaukumu LastName jābūt ar lielajiem burtiem.

>=Int(Now())

Ievadiet šodienas datumu.

M Or F

Vīrietim ievadiet M, sievietei — F.

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

Ievadiet derīgu .com, .net vai .org e-pasta adresi.

[RequiredDate]<=[OrderDate]+30

Ievadiet pieprasīto datumu, kas nav vēlāk kā 30 dienas pēc pasūtījuma datuma.

[EndDate]>=[StartDate]

Ievadiet beigu datumu, kas ir sākuma datums vai datums pēc tā.

Bieži lietotu validācijas kārtulu operatoru sintakses piemēri

Operators

Funkcija

Piemērs

NOT

Pārbauda apgrieztās vērtības. Lietojiet pirms salīdzināšanas operatora, izņemot IS NOT NULL.

NOT > 10 (tas pats, kas <=10).

IN

Pārbauda vērtības, kas vienādas ar sarakstā esošajiem dalībniekiem. Salīdzinājuma vērtībai jābūt ar komatu atdalītam sarakstam, kas ielikts iekavās.

IN ("Tokyo","Paris","Moscow")

BETWEEN

Pārbauda vērtību diapazonu. Jāizmanto divas salīdzinājuma vērtības — maza un liela — un jāatdala šīs vērtības ar atdalītāju AND.

BETWEEN 100 AND 1000 (tas pats, kas >=100 AND <=1000)

LIKE

Saskaņo piemēra virknes Text un Memo laukos.

LIKE "Geo*"

IS NOT NULL

Liek lietotājiem laukā ievadīt vērtības. Tas ir tāpat kā izvēloties lauka rekvizīta Obligāts iestatījumu . Tomēr, ja iespējojat rekvizītu Obligāts un lietotājs neievada vērtību, Access rāda diezgan nedraudzīgu kļūdas ziņojumu. Parasti datu bāzi ir vieglāk izmantot, ja izmantojat IS NOT NULL un rekvizītam Validācijas teksts ievadāt draudzīgu ziņojumu.

IS NOT NULL

AND

Norāda, ka visām validācijas kārtulas daļām jābūt patiesām.

>= #01/01/2007# AND <=#03/06/2008#

Piezīme.: Jūs varat izmantot arī AND, lai apvienotu validācijas kārtulas. Piemēram, NOT "UK" AND LIKE "U*".

OR

Norāda, ka dažām, bet ne visām validācijas kārtulas daļām jābūt patiesām.

Janvāris OR Februāris

<

Mazāks par.

<=

Mazāks par vai vienāds ar.

>

Lielāks par.

>=

Lielāks par vai vienāds ar.

=

Vienāds ar.

<>

Nav vienāds ar.

Aizstājējzīmju izmantošana validācijas kārtulās

Savās validācijas kārtulās jūs varat izmantot aizstājējzīmes. Atcerieties, ka Access atbalsta divu kopu aizstājējzīmes: ANSI-89 un ANSI-92. Katrā no šiem standartiem tiek izmantotas atšķirīgas aizstājējzīmju kopas.

Pēc noklusējuma visi. accdb un. mdb faili izmanto ANSI-89 standartu.

Jūs varat mainīt datu bāzes ANSI standartu uz ANSI-92, veicot šādas darbības:

  1. Cilnē Fails noklikšķiniet uz Opcijas.

  2. Dialoglodziņā Access opcijas noklikšķiniet uz Objektu projektētāji.

  3. Sadaļā Vaicājuma noformējums zem Ar SQL Server saderīga sintakse (ANSI-92) atlasiet Šī datu bāze.

Papildinformāciju par aizstājējzīmju izmantošanu un SQL standartu ANSI skatiet rakstā Access aizstājējzīmes.

Uz lapas sākumu

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.

Kopienas palīdz uzdot jautājumus un atbildēt uz tiem, sniegt atsauksmes, kā arī saņemt informāciju no ekspertiem ar bagātīgām zināšanām.