Databases Reference
In-Depth Information
rifizieren, ob es sich tatsächlich um ein gültiges Datum oder etwa um einen Orts-
namen handelt. Wenn wir den Typ
date
nutzen, wird die Gültigkeit des Datums
geprüft. Texte wie
1984-12-32
stellen kein Datum dar und werden zurückge-
wiesen. Mit Hilfe von Funktionen (siehe Abschnitt 11) können wir mit Datums-
feldern rechnen. Eine dieser Funktionen
current date
bietet sich sogar für Stan-
dardwerte an:
create table personen(
id int primary key,
name varchar(20) not null,
entered date default current date
)
Wenn wir einen Datensatz einfügen
insert into personen(id, name) values(0, 'Donald')
enthält die Spalte
entered
das Datum des heutigen Tages.
Ganz analog können wir den Typen
time
nutzen, um Uhrzeiten zu verwalten;
auch hier gibt es Funktionen wie
current time
, die uns die aktuelle Uhrzeit
liefert.
Der Typ
timestamp
liefert uns viel feingranularere Informationen über das Da-
tum und die Uhrzeit und enthält als Komponenten alle Informationen vom Jahr
bis zur Mikrosekunde. Wenn uns also der exakte Zeitpunkt der Erfassung von
Personen interessiert, müssen wir die Tabelle
personen
wie folgt definieren:
create table personen(
id int primary key,
name varchar(20) not null,
entered timestamp default current timestamp
)
Wie Zeitangaben innerhalb von
insert
-Anweisungen formatiert sein müssen,
hängt auch wieder sehr stark vom RDBMS-Produkt ab. Die für H2 gültige Syntax
entnehmen wir dem folgenden einfachen Beispiel:
create table timedata(
d date,
t time,
ts timestamp,
);
insert into timedata
values('1989-11-09', '12:00:00', '1989-11-09 12:00:00.0')
Large Objects:
Software zur Verwaltung von Diskussionsforen im Internet ver-
waltet die Beiträge der Teilnehmer in Datenbanken. Da im Regelfall keine Ober-