PostgreSQL Installation psql-Terminal PHP-Client Delphi-Client Grundlagen Python-Client Constraints
Pfad: Startseite / Fächer / Informatik / Datenbanken / PostgreSQL / Constraints
Autor: mk
20.05.2009 14:28:26
538
Constraints

Beispiel

Will man z.B. die Konsistenz der Daten für die Klassenstufe und die Klasse in einer Schülerdatei sicherstellen, so kann man etwa so vorgehen:

CREATE TABLE schueler (
    nr serial PRIMARY KEY,
    vorname character varying(20),
    nachname character varying(30),
    stufe int CHECK (5 <= stufe AND stufe <= 10),
    klasse char(1) CHECK ('a' <= klasse AND klasse <= 'e')
);

Versucht man nun z.B. mit

INSERT INTO schueler (vorname, nachname, stufe, klasse) values ('Fritz', 'Wunder', 4, 'c');

einen Schüler einzutragen, der nicht die vorgeschriebene Stufe hat, so weist das System diese Änderung zurück.

ERROR:  new row for relation "schueler" violates check constraint "schueler_stufe_check"

Der Pseudo-Datentyp 'serial' sorgt für die automatische Erhöhung des Feldes 'nr'.

Links

Valid XHTML 1.0!