Einführung
Eine örtliche Buchhandlung benötigt Hilfe bei der Einrichtung ihrer Produktkatalog-Datenbank. Als Datenbankadministrator ist es Ihre Aufgabe, eine Tabelle zu erstellen, in der Informationen über die Bücher gespeichert werden. Diese Herausforderung prüft Ihre Fähigkeit, eine MySQL-Tabelle mit geeigneten Datentypen und Integritätsbedingungen (Constraints) zu entwerfen.
Erstellen der Tabelle "books"
Ihre Aufgabe besteht darin, eine Tabelle zu erstellen, die den Lagerbestand der Buchhandlung verwaltet. Die Tabelle muss so konzipiert sein, dass sie verschiedene Datentypen für jedes Buch effizient speichert.
Aufgaben
- Verbinden Sie sich als Benutzer
rootmit MySQL. - Verwenden Sie die Datenbank
bookstore. - Erstellen Sie eine Tabelle namens
booksmit den entsprechenden Spalten und Datentypen, um folgende Informationen zu speichern:- Buch-ID (sollte automatisch hochgezählt werden)
- Buchtitel (maximal 200 Zeichen, Pflichtfeld)
- Preis (muss Dezimalwerte bis zu 999,99 unterstützen)
- Veröffentlichungsdatum
- Seitenzahl (nur ganze Zahlen)
- Beschreibung (langer Text)
- Lagerbestand (muss 0 oder positiv sein)
Anforderungen
- Alle Operationen müssen im Verzeichnis
~/projectausgeführt werden. - Der Tabellenname muss exakt
bookslauten. - Alle Spaltennamen müssen in Kleinschreibung geschrieben werden.
- Der Primärschlüssel muss den Namen
idtragen. - Der Titel darf nicht
NULLsein. - Der Preis muss genau 2 Dezimalstellen haben.
- Das Feld
quantity_in_stockdarf keine negativen Werte zulassen.
Beispiel
Nachdem Sie die Tabelle korrekt erstellt haben, sollte die Beschreibung der Tabelle (Describe) eine Ausgabe wie diese liefern:
DESCRIBE books;
+-------------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| title | varchar(200) | NO | | NULL | |
| price | decimal(5,2) | YES | | NULL | |
| publication_date | date | YES | | NULL | |
| page_count | int(11) | YES | | NULL | |
| description | text | YES | | NULL | |
| quantity_in_stock | int(11) | YES | | NULL | |
+-------------------+--------------+------+-----+---------+----------------+
Zusammenfassung
In dieser Herausforderung haben Sie geübt, eine MySQL-Tabelle mit geeigneten Datentypen und Constraints zu erstellen. Zu den demonstrierten Fähigkeiten gehören die Auswahl passender Datentypen für unterschiedliche Informationsarten, die Implementierung von automatisch hochzählenden Primärschlüsseln, das Einrichten von NOT NULL-Bedingungen und die Verwendung von CHECK-Constraints zur Datenvalidierung. Diese Grundlagen sind für das Datenbankdesign unerlässlich und werden bei der Arbeit mit MySQL-Datenbanken häufig benötigt.



