Databases Reference
In-Depth Information
-- Domaindefinition in Sybase SQL
CREATE DOMAIN Kunden_status
AS CHAR(1)
CHECK (@VALUE IN ('W', 'G', 'S'));
Die Anweisung CREATE DISTINCT TYPE erreicht, dass Attribute nur dann direkt ver-
gleichbar sind, wenn sie demselben DISTINCT TYPE angehören. Beispielsweise ist
ein Vergleich von Kundennummern mit Bestellnummern dann nicht ohne weiteres
möglich. Dies macht ja auch in der Regel keinen Sinn und ist meistens das Ergebnis
einer Verwechslung von Attribut-Bezeichnern. Die Definition eines DISTINCT
TYPE schließt aber wiederum keine Einschränkung eines Wertebereichs ein.
Beispiel:
CREATE DISTINCT TYPE typ_kunden_nr AS INTEGER
Falls doch ausnahmsweise so ein Vergleich vorgenommen werden soll, ist das
durch explizite Konvertierung auf den Ursprungstyp zu formulieren, was mit der
CAST-Anweisung geschehen kann.
Beispiel:
CAST(kunden_nr AS INTEGER)
DB2 implementiert dieses Konzept.
4.3.2 Datentypen in SQL
Es gibt die im Folgenden angegebenen Datentypen in SQL. Die Skalierungsgrößen
in der Klammer hinter dem Datentyp können in der Regel weggelassen werden. Es
werden dann Standardwerte eingesetzt, die bei numerischen Datentypen imple-
mentationsabhängig sind, bei Zeichen- und Bitketten jeweils 1, bei TIME 0 (d. h.
keine Unterteilung der Sekunde) und bei TIMESTAMP 6 (d.h. Genauigkeit auf Mikro-
sekunden).
Exakt numerisch
üblicherweise vier Byte
INTEGER
SMALLINT
üblicherweise zwei Byte
BIGINT
mindestens so groß wie INTEGER
NUMERIC(p,q)
Dezimalzahlen mit genau p Stellen, davon q hinter dem Dezimalpunkt
DECIMAL(p,q)
Dezimalzahlen mit mindestens p Stellen, davon q hinter dem Dezimal-
punkt
 
Search WWH ::




Custom Search