Oracle SQL Tutorial: Constraints

Definition von Integritätsbedingungen (constraint) mit Oracle

Definition von Integritätsbedingungen zur Begrenzung des Wertebereiches einzelner oder mehrerer Attribute. Constraints sind Tabellen und Spalten zuzuordnen. Typen von Constraints:

NOT NULL 

Spalte muß stets gefüllt sein.

UNIQUE 

Spalte oder Spaltenkombination ist eindeutig.

PRIMARY KEY 

Spalte oder Spaltenkombination ist Primärschlüssel.

FOREIGN KEY 

Spalte oder Spaltenkombination muß in einer separaten Tabelle als Schlüssel vorhanden sein.

ON DELETE CASCADE 

Löschen eines Datensatzes führt zum kaskadierenden Löschen der, über foreign key constraints verbundenen, Datensätze.

CHECK 

Boolscher Ausdruck ist wahr

Beispiele:  

create table einheit (
einheit_kurz varchar2(10) constraint pk_einheit primary key,
bezeichnung varchar2(40)
);

create table artikel (
artikel_nr number(5) not null,
bezeichnung varchar2(40) not null,
einheit_ref varchar2(10) not null,
constraint pk_artikel primary key (artikel_nr),
constraint fk_artikel_einheit foreign key (einheit_ref)
references einheit(einheit_kurz)
);

alter table auftrag_pos add constraint pk_auftrag_pos
primary key (auftrag_nr, pos);

alter table auftrag_pos add constraint ck_auftr_pos_artikel_text
check (artikel_nr is not null or text is not null);

alter table auftrag_pos add constraint fk_auftrag_pos_auftrag
foreign key (auftrag_nr) references auftrag(auftrag_nr);