
140 MySQL - Technische Referenz f¨ur Version 5.0.1-alpha
Weil lediglich der Name nicht besonders interessant ist, sollte die Tabelle weitere Informa-
tionen enthalten. Wenn zum Beispiel mehr als eine Person in Ihrer Familie ein Haustier
h¨alt, w¨urden Sie den Namen des Besitzers jedes Haustiers auflisten wollen. Ausserdem
wollen Sie vielleicht ein paar grundlegende Informationen wie Art und Geschlecht einf¨ugen.
Was ist mit dem Alter? Diese Information k¨onnte interessant sein, aber es ist keine gute
Idee, sie in der Datenbank zu speichern. Das Alter ¨andert sich, wenn die Zeit vergeht, was
bedeutet, dass Sie Ihre Datens¨atze oft aktualisieren m¨ussen. Statt dessen ist es besser, einen
festen Wert wie das Geburtsdatum zu speichern. Immer, wenn Sie dann das Alter ben¨otigen,
berechnen Sie es als Differenz zwischen dem aktuellen Datum und dem Geburtstag. MySQL
stellt Funktionen f¨ur Datumsberechnungen zur Verf¨ugung, daher ist so etwas nicht schwer.
Ausserdem hat die Speicherung von Geburtsdaten anstelle von Alter weitere Vorteile:
• Sie k¨onnen die Datenbank f¨ur Aufgaben wie die Erzeugung einer Liste bevorstehen-
der Tier-Geburtstage benutzen. (Wenn Sie das etwas albern finden, bedenken Sie,
dass sich dieselbe Frage zum Beispiel bei einer Gesch¨aftsdatenbank stellt, um Kunden
herauszufinden, denen Sie in K¨urze Geburtstagsw¨unsche schicken wollen, also f¨ur die
Computer-unterst¨utzte pers¨onliche Note.)
• Sie k¨onnen Altersberechnungen mit anderen Bezugsdaten als dem aktuellen Datum
durchf¨uhren. Wenn Sie das Sterbedatum speichern, k¨onnen Sie zum Beispiel leicht
errechnen, wie alt ein Haustier war, als es starb.
Wahrscheinlich fallen Ihnen weitere Informationen ein, die sinnvoller Weise in der pet-
Tabelle gespeichert werden k¨onnten. F¨ur unser Beispiel sollen die bisher identifizierten
Informationen f¨urs Erste ausreichen: Name, Besitzer, Art, Geschlecht, Geburtstag und
Sterbetag.
Legen Sie mit einem CREATE TABLE-Statement das Layout Ihrer Tabelle fest:
mysql> CREATE TABLE pet (name VARCHAR(20), besitzer VARCHAR(20),
-> art VARCHAR(20), geschlecht CHAR(1), geburtstag DATE, sterbetag DATE);
VARCHAR ist f¨ur die name-, besitzer- und art-Spalten eine gute Wahl, weil die Spaltenwerte
in der L¨ange variieren werden. Diese Spalten m¨ussen auch nicht alle gleich sein, also 20
Zeichen lang. Sie k¨onnen jede beliebige L¨ange zwischen 1 und 255 w¨ahlen, was immer Ihnen
vern¨unftig erscheint. (Wenn Sie eine schlechte Wahl getroffen haben und sich sp¨ater her-
ausstellt, dass Sie eine l¨angere Spalte brauchen, stellt MySQL ein ALTER TABLE-Statement
zur Verf¨ugung.)
Das Geschlecht der Tiere kann vielf¨altig dargestellt werden, zum Beispiel als "m" und "w",
oder auch als "m¨annlich" und "weiblich". Am einfachsten ist es, hierf¨ur einzelne Zeichen
wie "m" und "w" zu verwenden.
Der DATE-Datentyp f¨ur geburtstag und sterbetag liegt auf der Hand.
Nachdem Sie eine Tabelle angelegt haben, sollte SHOW TABLES auch etwas zeigen:
mysql> SHOW TABLES;
+---------------------+
| Tables in menagerie |
+---------------------+
| pet |
+---------------------+
Um sicherzustellen, dass Ihre Tabelle so wie erwartet angelegt wurde, benutzen Sie das
DESCRIBE-Statement:
Comentarios a estos manuales