Izteiksmes sintakses ceļvedis

Izmantojot Microsoft Access, bieži ir jāstrādā ar vērtībām, kas neatrodas tieši datos. Piemēram, var būt nepieciešams aprēķināt pārdošanas nodokli kādam pasūtījumam vai aprēķināt paša pasūtījuma kopējo vērtību. Šīs vērtības var aprēķināt, izmantojot izteiksmes. Lai izmantotu izteiksmes, tās jāuzraksta, izmantojot pareizo sintaksi. Sintakse ir kārtulu kopa, kas nodrošina vārdu un simbolu pareizu kombinēšanu izteiksmē. Iesākumā Access izteiksmes ir nedaudz grūti lasīt. Bet to lielā mērā atvieglo izpratne par izteiksmju sintaksi un praktiskas iemaņas.

Šajā rakstā

Izteiksmju apskats

Izteiksmju komponenti

Objekti, kolekcijas un rekvizīti

Identifikatori

Funkcijas, konstantes, operatori un vērtības

Izteiksmju ligzdošanas ierobežojums tīmekļa datu bāzē ir 65

Izteiksmju apskats

Izteiksme ir dažu vai visu šādu elementu kombinācija: iebūvētas vai lietotāja definētas funkcijas, identifikatori, operatori, vērtības un konstantes, no kuras tiek iegūta viena vērtība.

Izteiksmes komponenti

Piemēram, šajā izteiksmē ir iekļauti bieži izmantotie komponenti:

=Sum([Purchase Price])*0.08 
  • Sum() ir iebūvēta funkcija

  • [Purchase Price] ir identifikators

  • * ir matemātiskais operators

  • 0.08 ir konstante

Šo izteiksmi var izmantot formas kājenes vai atskaites kājenes tekstlodziņā, lai aprēķinātu preču grupas pārdošanas nodokli.

Izteiksmes var būt sarežģītākas vai vienkāršākas, nekā tas redzams šajā piemērā. Piemēram, šajā Būla izteiksme izteiksmē ir tikai operators un konstante:

>0

Šī izteiksme atgriež:

  • True, ja salīdzinājums attiecas uz skaitli, kas ir lielāks par 0.

  • False, ja salīdzinājums attiecas uz skaitli, kas ir mazāks par 0.

Šo izteiksmi var izmantot vadīklas vai tabulas lauka rekvizītā Validācijas kārtula, lai nodrošinātu tikai pozitīvu vērtību ievadīšanu. Izteiksmes tiek izmantotas dažādās vietās, lai veiktu aprēķinus, manipulētu ar rakstzīmēm vai pārbaudītu datus. Tabulas, vaicājumi, formas, atskaites un makro ir rekvizīti, kas akceptē izteiksmi. Piemēram, izteiksmes var izmantot vadīklas rekvizītos Vadīklas avots un Noklusējuma vērtība. Izteiksmes arī var izmantot tabulas lauka rekvizītā Validācijas kārtula

Uz lapas sākumu

Izteiksmju komponenti

Lai izveidotu izteiksmi, tiek kombinēti identifikatori, izmantojot funkcijas, operatorus, konstantes un vērtības. Ikvienā derīgā izteiksmē ir jābūt vismaz vienai funkcijai vai vismaz vienam identifikatoram, kā arī tajā var ietilpt konstantes un operatori. Varat arī izmantot izteiksmi kā citas izteiksmes daļu — parasti kā funkcijas argumentu. Tas tiek dēvēts par izteiksmes ligzdošanu.

  • Identifikatori    Vispārīgā forma ir:

    [Collection name]![Object name].[Property name]

    Ir tikai jānorāda pietiekami daudz identifikatora daļu , lai padarītu to unikālu konkrētās izteiksmes kontekstā. Nav nekas neparasts, ja identifikatora forma ir [Object name].

  • Funkcijas    Vispārīgā forma ir:

    Function(argument, argument)

    Viens no argumentiem parasti ir identifikators vai izteiksme. Dažām funkcijām nav nepieciešami argumenti. Pirms noteiktas funkcijas lietošanas pārskatiet šīs funkcijas sintaksi. Papildinformāciju skatiet rakstā Funkcijas (sakārtotas pēc kategorijas).

  • Operatori    Vispārīgā forma ir:

    Identifier operator identifier

    Pastāv izņēmumi attiecībā uz šo formu, kā norādīts sadaļā Operatori.

  • Konstantes    Vispārīgā forma ir:

    Identifier comparison_operator  constant
  • Vērtības    Vērtības var atrasties daudzās vietās izteiksmē.

Uz lapas sākumu

Objekti, kolekcijas un rekvizīti

Visas tabulas, vaicājumi, formas, atskaites un lauki Access datu bāzē atsevišķi tiek saukti par objektiem. Katram objektam ir nosaukums. Dažiem objektiem jau ir piešķirts nosaukums, piemēram, tabulai Kontaktpersonas datu bāzē, kas izveidota no Microsoft Office Access kontaktpersonu veidnes. Kad izveidojat jaunu objektu, jūs piešķirat tam nosaukumu.

Visu noteikta objektu veida dalībnieku kopa tiek dēvēta par kolekciju. Piemēram, visu datu bāzu kopa tabulā ir kolekcija. Daži objekti, kas ir datu bāzes kolekcijas dalībnieki, var arī būt kolekcijas, kurās ietilpst citi objekti. Piemēram, tabulas objekts ir kolekcija, kurā ietilpst lauku objekti.

Objektiem ir rekvizīti, kas apraksta objekta īpašības un nodrošina veidu, kā tās mainīt. Piemēram, vaicājuma objektam ir rekvizīts Noklusējuma skats, kas apraksta un ļauj norādīt, kā vaicājums izskatīsies, kad tiks izpildīts.

Tālāk redzamā shēma parāda relācijas starp kolekcijām, objektiem un rekvizītiem.

Kolekciju un objektu, un rekvizītu relācija

3 Rekvizīts

2 Objekts

1 Kolekcija

Uz lapas sākumu

Identifikatori

Izmantojot objektu, kolekcijas vai rekvizītu izteiksmē, jūs atsaucaties uz šo elementu, izmantojot identifikatoru. Identifikatorā ietilpst identificējamā elementa nosaukums, kā arī tā elementa nosaukums, pie kura tas pieder. Piemēram, lauka identifikatorā ietilpst lauka nosaukums un tās tabulas nosaukums, pie kuras pieder lauks. Šāda identifikatora piemērs ir

[Customers]![BirthDate]

Dažos gadījumos elementa nosaukums pats darbojas kā identifikators. Tas ir tiesa, ja elementa nosaukums ir unikāls izveidojamās izteiksmes kontekstā. Pārējo identifikatora daļu veido konteksts. Piemēram, ja veidojat vaicājumu, kurā tiek izmantota tikai viena tabula, lauku nosaukumi darbosies kā identifikatori, jo tabulas lauku nosaukumiem ir jābūt unikāliem šajā tabulā. Tā kā tiek izmantota tikai viena tabula, tabulas nosaukums ir ietverts jebkurā identifikatorā, kas tiek izmantots vaicājumā, lai atsauktos uz lauku.

Citos gadījumos ir skaidri jānorāda identifikatora daļas, lai atsauce darbotos. Tas ir tiesa, ja identifikators nav unikāls izteiksmes kontekstā. Ja rodas neskaidrības, ir skaidri jānorāda pietiekami daudz identifikatora daļu, lai padarītu to unikālu kontekstā. Pieņemsim, ka veidojat vaicājumu, kas izmanto tabulu ar nosaukumu Produkti un tabulu ar nosaukumu Pasūtījumi, un abās tabulās ir lauks ar nosaukumu Produkta_ID. Šādā gadījumā identifikatorā, kas tiek izmantots vaicājumā, lai atsauktos uz lauku Produkta_ID, papildus lauka nosaukumam ir jābūt iekļautam tabulas nosaukumam, piemēram,

[Products]![ProductID]

Identifikatora operatori    Ir trīs operatori, kurus var izmantot identifikatorā.

  • Izsaukuma operators (!)

  • Punkta operators (.)

  • Kvadrātiekavu operators ([ ])

Izmantojiet šos operatorus, katru operatora daļu ietverot kvadrātiekavās, un pēc tam savienojot tās, izmantojot vai nu izsaukuma, vai punkta operatoru. Piemēram, lauka ar nosaukumu Uzvārds tabulā Darbinieki identifikators var tikt izteikts kā [Employees]![Last Name]. Izsaukuma operators programmai Access norāda, ka tam seko objekts, kas pieder kolekcijai, kura atrodas pirms izsaukuma operatora. Šajā gadījumā [Uzvārds] ir objekta lauks, kas pieder kolekcijai [Darbinieki], kas pati ir tabulas objekts.

Precīzāk sakot, ne vienmēr ir jāievada kvadrātiekavas ap identifikatoru vai daļēju identifikatoru. Ja identifikatorā nav atstarpju vai citu speciālo rakstzīmju, Access automātiski pievieno kvadrātiekavas, kad tas nolasa izteiksmi. Tomēr ir ieteicams pievienot iekavas pašrocīgi — tas palīdz izvairīties no kļūdām un darbojas arī kā vizuāla norāde, ka konkrētā izteiksmes daļa ir identifikators.

Uz lapas sākumu

Funkcijas, konstantes, operatori un vērtības

Lai izveidotu izteiksmi, ir nepieciešami ne tikai identifikatori — ir jāveic arī noteiktas darbības. Lai veiktu darbības izteiksmē, izmantojiet funkcijas, operatorus un konstantes.

Funkcijas

Funkcija ir procedūra, kuru var izmantot izteiksmē. Dažām funkcijām, piemēram, Date, nav nepieciešami visi ievadītie dati, lai tās varētu darboties. Tomēr lielākajai daļai funkciju ir nepieciešams ievade, kas tiek dēvēta par argumentiem.

Piemērā šī raksta sākumā funkcija DatePart izmanto divus argumentus: intervāla argumentu (ar vērtību "yyyy") un datuma argumentu (ar vērtību [Customers]![BirthDate]). Funkcijai DatePart ir nepieciešami vismaz šie divi argumenti (intervāls un datums), bet tā var pieņemt līdz pat četriem argumentiem.

Šajā sarakstā ir dažas funkcijas, kuras parasti tiek izmantotas izteiksmēs. Noklikšķiniet uz katras funkcijas saites, lai iegūtu papildinformāciju par sintaksi, kas jāizmanto ar šo funkciju.

  • Funkcija Date tiek izmantota, lai ievietotu pašreizējo sistēmas datumu izteiksmē. Tas parasti tiek izmantota kopā ar formāta funkciju, un tiek izmantota kopā ar lauku identifikatoriem laukos, kuros ir datuma/laika dati.

    =Date()
  • DatePart funkcija tiek izmantota, lai noteiktu, vai jāizvelk datuma daļa — parasti datums, kas tiek iegūts no lauka identifikatora, bet dažreiz datuma vērtība, kuru atgriež citas funkcijas, piemēram, Datums.

    DatePart ( "yyyy", Date())
  • DateDiff funkcija tiek izmantota, lai noteiktu divu datumu starpības — parasti starp datumu, kas tiek iegūts no lauka identifikatora, un datumu, kas tiek iegūti, izmantojot funkciju Date.

    =DateDiff(“d”, Now(), [Orders].[ReceiveBefore])-10 
  • Formatēšanas funkcija tiek izmantota, lai lietotu formātu identifikatoram, kā arī citu funkciju rezultātiem.

    Format([Date],"ww")=Format(Now(),"ww")-1 
  • IIf funkcija tiek izmantota, lai novērtē izteiksmi kā patiesu vai aplamu, un pēc tam atgrieztu vienu vērtību, ja izteiksme tiek novērtēta kā patiesa, un citu vērtību, ja izteiksme tiek novērtēta kā aplama.

    =IIf([CountryRegion]="Italy", "Italian", "Some other language")
  • InStr funkcija tiek izmantota, lai atrastu rakstzīmes vai virkne pozīciju citā virknē. Meklējamā virkne parasti tiek iegūta no lauka identifikatora.

    InStr(1,[IPAddress],".")
  • Funkcijas Pa kreisi, Vidū un Pa labi tiek izmantotas, lai izvilktu rakstzīmes no virknes, sākot no pēdējās rakstzīmes pa kreisi (Pa kreisi), konkrētā pozīcijā vidū (Mid), vai pēdējās rakstzīmes labajā pusē (Pa labi). Tās parasti tiek izmantotas kopā ar InStr funkciju. Virkne, no kuras šīs funkcijas izgūst rakstzīmes, parasti tiek iegūta no lauka identifikatora.

    Left([ProductName], 1)
    Right([AssetCode], 2) 
    Mid([Phone],2,3) 
    

Funkciju sarakstu skatiet rakstā Funkcijas (sakārtotas pēc kategorijas).

Operatori

Operators ir vārds vai simbols, kas norāda noteiktu aritmētisku vai loģisku relāciju starp citiem izteiksmes elementiem. Operatori var būt

  • Aritmētiski, piemēram, plus zīme (+).

  • Salīdzinājuma, piemēram, vienādības zīme (=).

  • Loģiskie, piemēram, Not.

  • Savienošanas, piemēram, &.

  • Īpašie, piemēram, Like.

Operatorus galvenokārt izmanto, lai norādītu divu identifikatoru savstarpēju relāciju. Tālāk esošajā tabulā ir aprakstīti operatori, kurus var izmantot programmas Access izteiksmēs.

Aritmētiskie    

Aritmētiskie operatori tiek izmantoti, lai aprēķinātu divu vai vairāku skaitļu vērtību vai mainītu skaitļa zīmi no pozitīvas uz negatīvu.

Operators

Nolūks

Piemērs

+

Saskaitīt divus skaitļus.

[Starpsumma] + [PVN]

-

Noteikt divu skaitļu starpību vai norādīt negatīva skaitļa vērtību.

[Cena]-[Atlaide]

*

Reizināt divus skaitļus.

[Daudzums]*[Cena]

/

Pirmo skaitli dalīt ar otro skaitli.

[Kopā]/[Vienumu_skaits]

\

Noapaļot abus skaitļus līdz veseliem skaitļiem, dalīt pirmo skaitli ar otro un pēc tam saīsināt rezultātu līdz veselam skaitlim.

[Reģistrēts]\[Telpas]

Mod

Dalīt pirmo skaitli ar otro un atgriezt tikai atlikumu.

[Reģistrēts] Mod [Telpas]

^

Kāpināt skaitli kāpinātāja pakāpē.

Skaitlis ^ Kāpinātājs

Salīdzinājums   

Salīdzinājuma operatori tiek izmantoti, lai salīdzinātu vērtības un atgrieztu rezultātu, kas ir True, False vai Null (nezināma vērtība).

Operators

Nolūks

<

Noteikt, vai pirmā vērtība ir mazāka par otro vērtību.

<=

Noteikt, vai pirmā vērtība ir mazāka vai vienāda ar otro vērtību.

>

Noteikt, vai pirmā vērtība ir lielāka par otro vērtību.

>=

Noteikt, vai pirmā vērtība ir lielāka vai vienāda ar otro vērtību.

=

Noteikt, vai pirmā vērtība ir vienāda ar otro vērtību.

<>

Noteikt, vai pirmā vērtība nav vienāda ar otro vērtību.

Visos gadījumos, ja pirmā vērtība vai otrā vērtība ir Null, rezultāts arī ir Null. Tā kā Null ir nezināma vērtība, rezultāts, salīdzinot ar vērtību Null, arī ir nezināms.

Loģiskie    

Loģiskie operatori tiek izmantoti, lai kombinētu divas vērtības un atgrieztu vērtību true, false vai rezultātu Null. Loģiskie operatori var tikt dēvēti arī par Būla operatoriem.

Operators

Lietojums

Apraksts

And

Izteiksme1 un Izteiksme2

True, ja Izteiksme1 un Izteiksme2 ir patiesas.

Or

Izteiksme1 vai Izteiksme2

True, ja Izteiksme1 vai Izteiksme2 ir patiesas.

Eqv

Izteiksme1 vienāda ar Izteiksme2

True, ja gan Izteiksme1, gan Izteiksme2 ir patiesas vai ja gan Izteiksme1, gan Izteiksme2 nav patiesas.

Not

Izteiksme nav

True, ja izteiksme nav patiesa.

Xor

Izteiksme1 Xor Izteiksme2

True, ja Izteiksme1 vai Izteiksme2 ir patiesas, bet ne abas.

Savienošanas   

Savienošanas operatori tiek izmantoti, lai divas teksta vērtības apvienotu vienā virknē.

Operators

Lietojums

Apraksts

&

Virkne1 & virkne2

Apvieno divas virknes, lai izveidotu vienu virkni.

+

virkne1 + virkne2

Apvieno divas virknes, lai izveidotu vienu virkni, un pārņem vērtības null.

Īpašie   

Īpašie operatori tiek izmantoti, kā aprakstīts tālāk esošajā tabulā.

Operators

Apraksts

Papildinformācija

Is Null or Is Not Null

Nosaka, vai vērtība ir Null vai Not Null.

Like "pattern"

Pielāgo virknes vērtības, izmantojot aizstājējzīmju operatorus ? un *.

Operators Like

Between val1 And val2

Nosaka, vai ciparu vai datuma vērtība ietilpst diapazonā.

Operators Between...And

In(string1,string2...)

Nosaka, vai virknes vērtība ietilpst virknes vērtību kopā.

Operators In

Konstantes

Konstante ir zināma vērtība, kas nemainās un kuru var izmantot izteiksmē. Programmā Access ir četras bieži lietotās konstantes:

  • True Norāda, ka vērtība ir loģiski patiesa.

  • False Norāda, ka vērtība ir loģiski aplama.

  • NullNorāda zināmas vērtības trūkumu.

  • "" (empty string) Norāda vērtību, kas ir tukša.

Konstantes var izmantot kā funkcijas argumentus, kā arī tās var izmantot kā daļu no kritērija izteiksmē. Piemēram, varat izmantot tukšas virknes konstanti ("") kā daļu no kolonnas kritērija vaicājumā novērtēt lauku vērtības šajā kolonnā, ievadot šādu kritēriju: <>"". Šajā piemērā <> ir operators un "" ir konstante. Ja tie tiek izmantoti kopā, tas norāda, ka identifikators, kuram tie tiek lietoti, jāsalīdzina ar tukšu virkni. Izteiksme, kuras rezultāts ir patiess, ja identifikatora vērtība nav tukša virkne.

Ievērojiet piesardzību, lietojot Null konstanti. Lielākajā daļā gadījumu, izmantojot Null kopā ar salīdzināšanas operatoru, radīsies kļūda. Ja vēlaties salīdzināt vērtību ar Null izteiksmē, izmantojiet operatoru Is Null vai Is Not Null.

Vērtības

Izteiksmēs varat izmantot literāļa vērtības, piemēram, 1,254 vai virkni “Enter a number between 1 and 10” (Ievadiet skaitli no 1 līdz 10). Varat izmantot arī skaitliskās vērtības, kas var būt ciparu sērijas, ieskaitot zīmi un decimālzīmi, ja nepieciešams. Zīme neesamības gadījumā Access izmanto pozitīvu vērtību. Lai vērtību padarītu negatīvu, iekļaujiet mīnusa zīmi (-). Varat arī izmantot zinātnisko pierakstu. Lai to izdarītu, ir jāiekļauj "E" vai "e" un kāpinātāja zīme (piemēram, 1.0E-6).

Izmantojot teksta virknes, ievietojiet tās pēdiņās, lai nodrošinātu, ka programma Access tās interpretē pareizi. Dažos gadījumos Access nodrošina pēdiņas jūsu vietā. Piemēram, ievadot tekstu validācijas kārtulas vai vaicājuma kritēriju izteiksmē, Access automātiski ievieto teksta virknes pēdiņas.

Piemēram, ja ievadīsit tekstu Paris, programma Access izteiksmē parādīs "Paris". Ja vēlaties, lai izteiksme izveido virkni, kas faktiski ir iekļauta pēdiņās, ievietojiet ligzdoto virkni vai nu vienpēdiņās ('), vai trīs dubultpēdiņu (") kopās. Piemēram, šīs izteiksmes ir līdzīgas:

Forms![Contacts]![City]. DefaultValue = ' "Paris" ' 
Forms![Contacts]![City].DefaultValue = " " "Paris" " " 

Lai izmantotu datuma/laika vērtības, iekļaujiet vērtības restītēs (#). Piemēram, #3-7-17#, #7-Mar-17# un #Mar-7-2017# visas ir derīgas datuma/laika vērtības. Ja programma Access atklāj restītes rakstzīmēs (#) iekļautu derīgu datuma/laika vērtību, tā automātiski apstrādā vērtību kā datu tipu Datums/laiks.

Uz lapas sākumu

Izteiksmju ligzdošanas ierobežojums tīmekļa datu bāzē ir 65

Izteiksmes, kas ir ligzdotas vairāk nekā 65 līmeņu dziļumā, pārlūkprogrammā nedarbosies, tāpēc šādas izteiksmes Access tīmekļa datu bāzē nav ieteicams lietot. Kļūdu ziņojumi netiks rādīti — izteiksme vienkārši nedarbosies.

Lietojot operatorus &, AND un OR, serverī var tikt izveidoti papildi ligzdošanas līmeņi, kas netiek atspoguļoti Access klientā. Piemēram, izteiksme "a" & "b" & "c", netiek ligzdota izteiksmju veidotājā, bet koplietošanas vidē SharePoint tā kļūst par concatenate.Db("a", concatenate.Db("b", "c") ). Šis tulkojums izveido vienu ligzdošanas līmeni. Izmantojot daudzus secīgus operatorus &, AND vai OR vienā izteiksmē, iespējams, pārsniegsit servera ligzdošanas ierobežojumu (65), līdz ar to izteiksme pārlūkprogrammā nedarbosies.

Uz lapas sākumu

Skatiet arī

Izteiksmju veidotāja izmantošana

Ievads par izteiksmēm

Izteiksmes izveide

Izteiksmju piemēri

Paplašiniet savas Office prasmes
Iepazīties ar apmācību
Esiet pirmais, kas saņem jaunās iespējas
Pievienoties Office Insider programmai

Vai šī informācija bija noderīga?

Paldies par jūsu atsauksmēm!

Paldies par atsauksmēm! Šķiet, ka varētu būt noderīgi sazināties ar kādu no mūsu Office atbalsta aģentiem.

×