Reguli de validare la nivel de câmp si de înregistrare
: constrangerea CHECK
Restrictiile utilizator (restrictii
de comportament) sunt implementate sub forma regulilor de validare
la nivel de câmp (field validation rule), la nivel de înregistrare
(record validation rule) sau, daca sunt mai complexe, sunt incluse
în declansatoare (triggers)
Sunt constrangeri care
evalueaza conditiile definite in constrangere, si daca aceste conditii
sunt satisfacute, permit executia instructiunilor INSERT sau UPDATE
asupra datelor din tabel.
Sunt utile daca este necesara
pastrarea valorilor unei coloane intr-un anumit interval sau intr-o
lista specificata de valori. Are urmatoarea sintaxa:
[CONSTRAINT <nume_constrangere>]
CHECK ((<conditie>)
CREATE TABLE Facturi (
Numar
INTEGER
CONSTRAINT nn_facturi_numar NOT NULL,
Data
DATE
CONSTRAINT nn_facturi_data NOT NULL,
Cod
CHAR (4)
CONSTRAINT fk_facturi_agenti REFERENCES agenti(cod),
tip_pr
NUMBER(2)
CONSTRAINT fk_facturi_tipuri REFERENCES tipuri (tip_pr) ,
Pret
NUMBER (7,2)
CONSTRAINT
ck_pret CHECK pret>0,
Cant
NUMBER (6,2),
Val NUMBER (10,2),
PRIMARY KEY (numar,data));