DOMAIN | DATATYPE-Klausel
Es wird empfohlen, CREATE DOMAIN zu verwenden anstatt CREATE DATATYPE, da CREATE DOMAIN im SQL/2008-Standard definiert
ist.
NULL-Klausel
Mit dieser Klausel können Sie die Nullwertfähigkeit einer Domäne angeben. Wenn eine Domäne zur Definition einer Tabelle
verwendet wird, wird die Nullwertfähigkeit folgendermaßen bestimmt:
In der Spaltendefinition.
In der Domänendefinition.
Wenn die Nullwertfähigkeit weder in der Spalten- noch in der Domänendefinition explizit angegeben ist, wird die Einstellung
der Option allow_nulls_by_default verwendet.
CHECK-Klausel
Für die Erstellung einer Domäne mit CHECK-Integritätsregel können Sie in der Suchbedingung den Namen einer Variablen
verwenden, dem das Zeichen "@" vorangestellt wird. Wenn der Datentyp in der Definition einer Spalte verwendet wird, wird eine
solche Variable durch den Spaltennamen ersetzt. Dadurch kann die CHECK-Integritätsregel einer Domäne auf jede mit dieser Domäne
definierte Tabellenspalte angewendet werden.
Domänen sind Aliasnamen für integrierte Datentypen, und beinhalten ggf. auch Gesamtstellen- und Dezimalstellenwerte. Sie verbessern
den Bedienungskomfort und unterstützen die Konsistenz in der Datenbank.
Domänen sind Objekte innerhalb einer Datenbank. Ihre Namen müssen den Regeln für Bezeichner entsprechen. Bei Domänennamen
wird die Groß-/Kleinschreibung genauso wie bei integrierten Datentypnamen nicht berücksichtigt.
Der Benutzer, der einen Datentyp erstellt, wird automatisch zum Eigentümer dieses Datentyps. In der CREATE DATATYPE-Anweisung
kann kein Eigentümer angegeben werden. Der Domänenname muss eindeutig sein, und alle Benutzer können auf den Datentyp zugreifen,
ohne den Eigentümer als Präfix zu verwenden.
Domänen können CHECK-Bedingungen und DEFAULT-Werte haben. Außerdem können Sie angeben, ob der Datentyp NULL zulässt oder nicht.
Diese Bedingungen und Werte werden an alle Spalten vererbt, die mit dieser Domäne definiert wurden. Alle explizit in der Spalte
angegebenen Bedingungen oder Werte heben die für die Domäne angegebenen auf.
Mit der DROP DOMAIN-Anweisung können Sie die Domäne aus der Datenbank löschen. Sie müssen entweder Eigentümer der Domäne sein
oder eine DBA-Berechtigung besitzen, um eine Domäne löschen zu können.
Die folgende Anweisung erstellt eine Domäne mit dem Namen address, die eine Zeichenfolge aus 35 Zeichen enthält und NULL zulässt.
CREATE DOMAIN address CHAR( 35 ) NULL;
Die folgende Anweisung erstellt eine Domäne mit dem Namen ID, die NULL nicht zulässt und auf die standardmäßig ein Autoinkrement
angewendet wird.
CREATE DOMAIN ID INT
NOT NULL
DEFAULT AUTOINCREMENT;
Die folgende Anweisung erstellt eine Domäne mit dem Namen PhoneNumber, die mithilfe eines regulären Ausdrucks innerhalb einer
CHECK-Integritätsregel sicherstellt, dass die Zeichenfolge eine korrekt formatierte nordamerikanische Telefonnummer mit 12
Zeichen enthält, bestehend aus dreistelliger Vorwahl, dreistelliger Vermittlungsnummer und vierstelliger Durchwahl, getrennt
entweder durch Bindestriche oder durch Leerzeichen.