Sunteți pe pagina 1din 14

Operatorii Access

De atribuire =
Preced o expresie si semnifica De concatenare{+,&}
faptul ca rezultatul obtinut in Se folosesc pentru a
urma evaluarii expresiei va fi combina sirurile de
atribut unui camp, unui criteriu caractere
etc
Logici
Aritmetici
{+,-,*,/,\,^,MOD} {And, Or, Xor, Not, Eqv,
Imp, Between…and, In
Se folosesc pentru a executa calcule
matematice in campurile calculate Operatorii logici sunt foarte utili
atunci cand se construiesc expresii
logice care descriu anumite
Relationali conditii,ce vor fi testate, urmand ca in
functie de rezultat, sa se execute
{>,>=,<,<=,=,<>,Like,Is} anumite operatii. Ei se folosesc
Se folosesc pentru a compara valorile pentru construirea criteriilor de
a doua expresii interogari sau in controalele calculate
din formulare sau rapoarte.
Operatorii Access
• Operanzii – pot fi constante, nume de campuri, nume de variabile de
memorie, functii sau nume de obiecte (tabele, formulare, interogari,
rapoarte). Referirile la numele de campuri sau nume de obiecte trebuie
inchise intre paranteze drepte: [<nume>]. De exemplu, daca intr-0m
expresie trebuie sa apara referirea la campul cod_mat din tabelul
Materiale, se scrie in expresie [cod_mat].

• Expresia – se poate folosi in conditiile de validare a datelor din tabelele


bazei de date, in interogari in campurile calculate sau in criterii, in rapoarte
si in formulare in campurile calculate, in conditiile de macrocomenzi, etc.
Access recalculeaza o expresie de fiecare data cand se schimba valoarea
operanzilor. Dac aexpresia este folosita intr-un camp calculat dintr-un
formular sau dintr-un raport, ea va fi evaluata de fiecare data cand se
schimba inregistrarea afisata in formular sau in raport. Daca expresia este
folosita intr-un criteriu al unei interogari, ea va fi evaluata de fiecare data
cand se executa interogarea respectiva.
Operatorii aritmetici

• Operatorii aritmetici care apar in plus in Access, fata de aplicatia Excel, sunt:

Operator Semnificatie Exemple

MOD (modulo) Calculeaza restul impartirii primului 19MOD4 3


operand la al doilea operand
\ (impartire Calculeaza catul impartirii primului 19\4 4
intreaga) operand la al doilea operand. Daca 11,7\6,2 2
operanziii nu sunt numere intregi, ei
sunt rotunjiti inainte de executarea
operatiei de impartire.
Operatori relationali

• Operatorii>, >=, <, <=, =, <> pot fi aplicati pe date de tip numeric sau
alfanumeric. In cazul in care cel putin unul dintre operanzi are valoarea
NULL , furnizeaza rezultatul NULL. De exmplu: 5=NULL NULL sau
5<>NULL NULL sau NULL<=7 NULL.
Compararea a doua caractere este posibila prin compararea numerica a
codurilor lor ASCII. Compararea a doua siruri de caractere se face prin
compararea codului ASCII al caracterelor din aceeasi pozitie a fiecarui sir.
Operatia de comparare incepe cu prima pozitie din sir si continua cu
urmatoarele pozitii, numai daca pozitiile anterioare sunt identice in ambele
siruri. De exemplu, “Idee”>”IDei” produce rezultatul True.

Operatorul Like se poate aplica numai pe siruri de caractere si compara daca


un sir de caractere corespunde unui sablon.
Daca sirul de caractere corespunde sablonului, rezultatul furnizat este True.
Daca siruk de caractere este constanta NULL, rezultatul furnizat este NULL.
Sablonul se construieste cu ajutorul caracterelor de inlocuire.
Caracter Semnificatie Exemple

? Este permis orice caracter in pozitia “alfa”Like”al?” True


respectiva “alfa”Like”a?a” False

* Este permis orice grup de caractere


in pozitia respectiva, chiar si nici un
“alfa”Like”a*a” True
“alfa”Like”a*f” False
caracter.
[<lista- Este permis orice caracter din lista “alfa”Like”al[a-m]a” True
caractere>] in pozitia respectiva. “alfa”Like”al[a-d]a” False

[!<lista- Este permis orice caracter care nu “alfa”Like”al[!a-d]” True


caractere>] este in lista in pozitia respectiva. “alfa”Like”al[!a-m]a” False

# Este permisa orice cifra in pozitia


respectiva.
“a12a”Like”a##a” True
“alfa”Like”a##a” False

[] Este permis un sir de lungime zero. “”Like[] True


“alfa”Like[] False
Exemple:
• Pentru construirea sablonului se pot combina caracterele de
inlocuire:

“alfa1”Like”a[k-r]?[!b-f]#” True
“alfa*”Like”alfa[*]” True
“#123alfa”Lke”[#]*alfa” True
“#123alfa”Like”[#]###alfa” True
Operatorul Is se poate aplica pentru a testa daca valoarea unui
camp este NULL.
<nume obiect>Is NULL
Se foloseste in general in interogari, pentru a fi afisate si
inregistrarilecare, pentru campul respectiv, au valoarea NULL, sauin
formulare, pentru a atentiona utilizatorul printr-un mesaj ca trebuie
sa introduca o valoare in acel camp.
Operatorii de concatenare

Operator Semnificatie Exemple

+ Reuneste doua siruri de caractere


intr-un singur sir de caractere. Ambii
“Buna”+”ziua”
“Buna ziua”
(de operanzi trebuie sa fie de tip sir de “alfa”+123
caractere.
concatenare mesaj de eroare
simplu) (Type mismatch)

Reuneste doua siruri de caractere “alfa”&”bet”


& intr-un singur sir de caractere. Daca “alfabet”
(de unul dintre operanzi nu estede tip sir
“alfa”&123&”beta”
de caractere, va fi convertit in sir de
concatenare caractere. “alfa123beta”
special)
Operatorii logici
• Operatorii logici And, Or, Xor, Not, Eqv, Imp se folosesc in general in construirea
criteriilor din interogari sau pentru validarea datelor introduse in campurile tabelelor.

Operator Semnificatie Exemple


And Daca ambii operanzi au valoarea (9>8)And(8>7) True
True, rezultatul este True. Daca (8>9)And(8>7) False
(“si”)
unul dintre operanzi este False, (9>8)And(8>NULL) NULL
rezultatul este False
Or Daca cel putin unul dintre (9>8)Or((8>7) True
operanzi are valoarea True, (8>9)Or(8>7) True
(“sau
rezultatul este True (9>8)Or(8>NULL) True
inclusiv”)
(8>9)Or(9>NULL) False
Xor Daca cel putin unul dintre (9>8)Xor(8>7) False
operanzi are valoarea NULL, (8>9)Xor(8>7) True
(“sau
rezultatul este NULL.Daca numai (8>9)Xor(7>8) False
exclusiv”) unul dintre operanzi are valoarea
True, rezultatul este True (9>8)Xor(8>NULL) NULL
Operatorii logici

Operator Semnificatie Exemple

Eqv Daca cel putin unul dintre (9>8)Eqv(8>7) True


(“echivalenta”) operanzi are valoarea NULL, (8>9)Eqv(8>7) False
rezultatul este NULL. Dacanumai (8>9)Eqv(7>8) True
unul dintre operanzi are valoarea
False, rezultatul este False (9>8)Eqv(8>NULL) NULL

Imp (9>8)Imp(8>7) True


(“implicatia”) (8>9)Imp(8>7) True
(9>8)Imp(7>8) False
(8>9)Imp(7>8) True
(9>8)Imp(8>NULL)NULL
a b a And b a Or b a Xor b a Eqv b A Imp b
True True True True False True True
True False False True True False False
True NULL NULL True NULL NULL NULL
False True False True True False True
False False False False False True True
False NULL False NULL NULL NULL True
NULL True NULL True NULL NULL True
NULL False False NULL NULL NULL NULL
NULL NULL NULL NULL NULL NULL NULL
Operator Semnificatie a Not a Exemplu

Not Schimba valoarea unui True False Not(9>8) False


operand cu complementul
(negare) sau: True cu False si False
cu True. Daca operandul are False True Not(8>9) True
valoarea NULL, isi pastreaza
valoarea.
NULL NULL Not(NULL>8)
NULL
Operatorul between…and se foloseste pentru a verifica daca
valoarea unei expresii se gaseste intr-un interval precizat:
<exp>between<v1>and<v2>
unde <exp> reprezinta expresia a carei valoare se testeaza, iar <v1>
si <v2> reprezinta doua constante care definesc intervalul [v1,v2].
Constantele <v1> si <v2> trebuie sa fie de acelasi tip ca si rezultatul
expresiei <exp>. Daca rezultatul expresiei se gaseste in intervalul
precizat, atuncirezultatul furnizat de operator va fi True, altfel, va fi
False. Daca una dintre constantele <v1> si <v2> are valoarea Null,
rezultatul va fi Null.

Exemple: [data_m]between#01/1/08#and#01/1/09#
Daca data miscarii materialului din campul data_m este intre
01.01.2008 si 01.01.2009 atunci rezultatul va fi True, altfel, va fi False.
[stoc]not between 100 and 150
Daca valoarea din campul stoc nu este cuprinsa intre 100 si 150, atunci
rezultatul va fi True, altfel, va fi False.
Operatorul in se foloseste pentru a testa daca valoarea unei expresii
se gaseste intr-o lista de valori precizate:
<exp>in(<v1>,<v2>,…,<vn>)
unde <exp> reprezinta expresia a carei valoare se testeaza, iar
<v1>, <v2>, …, <vn> reprezinta lista de valori. Constantele <v1>,
<v2>, …, <vn> trebuie sa fie de caelasi tip cu rezultatul expresiei
<exp>. Daca rezultatul expresiei este egal cu una dintre valorile din
lista, atunci rezultatul furnizat de operator va fi True, altfel va fi
False.
Exemple: [den_mat] in (“pixuri”,”creioane”)

Daca numele materialului memorat in campul den_mat este Pixuri


sau Creioane atunci rezultatul va fi True, altfel va fi False.
[cod_mat] not in (100, 200, 300)

Daca identificatorul codului din campul cod_mat nu este 100, 200


sau 300 atunci rezultatul va fi True, altfel va fi False.
Precedenta operatorilor

1.Aritmetici si de concatenare 2.Relationali 3.Logici

1. Ridicarea la putere (^) Precedenta egala Precedenta


2. Inmultirea si impartirea(* si /) este: not,
and, or, xor,
3. Impartirea intreaga (\) eqv si imp
4. Modulo (MOD)
5. Adunarea si scaderea (+ si -)
6. Concatenarea (&)

Profesor: Minerva Vonica


Grup Scolar de Telecomunicatii si Lucrari Publice Hunedoara

S-ar putea să vă placă și