Wie schränken Sie in Postgres mögliche Werte für eine bestimmte Spalte ein?

Ich möchte erstellen Sie eine Spalte element_type in einer Tabelle (genannt discussion) ermöglicht es, dass die text-Werte "Lektion" oder "quiz" aber einen Fehler erzeugen, wenn jeder andere Wert wird in die betreffende Spalte eingefügt.

Ich verstehe, dass ich erstellen Sie eine separate Tabelle namens element_types mit Spalten element_id (primary key, int) und element_type (einzigartigen text) und erstellen Sie eine foreign key - foreign_element_id in der Tabelle discussion verweisen auf element_types's Spalte element_id. Oder alternativ könnte ich vergessen element_id insgesamt und nur eingestellt element_type als Primärschlüssel. Aber ich möchte vermeiden, erstellen Sie eine neue Tabelle.

Ist es ein einfacher Weg, um zu beschränken, möglich Werte in einer Spalte, ohne eine neue Tabelle erstellen?

Kommentar zu dem Problem
warum wollen Sie vermeiden, die Schaffung einer Tabelle? Sie sind nicht besonders teuer. Kommentarautor: SingleNegationElimination
Es ist nicht so sehr die Kosten für eine Tabelle, wie viel unnötigen Krempel, Wann immer ich will, zu beschränken, möglich Werte, die in meinem Fall, ist sehr Häufig. Kommentarautor: Deets McGeets

InformationsquelleAutor der Frage Deets McGeets | 2011-08-30

Schreibe einen Kommentar