Folien



(letzte Synchronisation der PDF-Präsentation: 02.03.2017)

Falls keine PDF-Präsentation zu sehen ist, klicken Sie zum Download hier: Direktdownload PDF-Präsentation

Anlegen einer neuen Tabelle mit CREATE TABLE tabellenname ()
(create table bei MySQL-docu)

Komplette Syntax:

MySQL-Code
  CREATE TABLE tabellenname (feldname datentyp [NOT NULL] [AUTO_INCREMENT] [PRIMARY KEY], [feldname2 datentyp2 [NOT NULL] ...]  
  • tabellenname = Name der Tabelle; tabellenname kann auch als zu einer bestimmten DB gehörig spezifiziert werden: CREATE TABLE 'datenbankname'.'tabellenname'
  • feldname = “Spalte” einer Tabelle, soll aussagekräftig sein
  • datentyp = siehe
  • NOT NULL = Wert des Feldes darf nicht 0 sein
  • AUTO_INCREMENT = Zahl wird bei jedem neuen Datensatz automatisch um eins erhöht
  • PRIMARY KEY = Feld wird zum Primärschlüssel und referenziert damit jeden Datensatz eindeutig
  • UNIQUE KEY = Feldinhalt darf nicht doppelt vorkommen (z.B. “Artikelnummer”).

Beispiel:

MySQL-Code
  CREATE TABLE kunden ( kunde_id INT AUTO_INCREMENT NOT NULL PRIMARY KEY, kunde_name VARCHAR(50) );    

oder

MySQL-Code
  CREATE TABLE meine_dvds (id INT AUTO_INCREMENT PRIMARY KEY NOT NULL, nummer INT UNIQUE KEY, name VARCHAR(255));  

Übungen

Alle Übungen finden Sie in der Materialsammlung (dort auch alle zusätzlichen Dateien wie Bilder, Klassendiagramme oder HTML-Vorlagen!).

Die aktuelle Übung können Sie hier als txt-File herunterladen.


***** Übungen: MySQL - CREATE TABLE *****


MySQL_2-1: Einfache Tabellen mit CREATE TABLE erstellen

1. Erstellen Sie per CREATE TABLE eine Tabelle "benutzer" mit folgenden Feldern und probieren Sie in phpmyadmin aus, ob der Befehl funktioniert:

-  id (Ganzzahl, automatisch hochzählen, Primärschlüssel, darf nicht Null sein)
-  vorname (Zeichenkette)
-  nachname (Zeichenkette)
-  registrierungsdatum (Datum)

2. Erstellen Sie per CREATE TABLE eine Tabelle "kreditkarte" mit folgenden Feldern und probieren Sie in phpmyadmin aus, ob der Befehl funktioniert:

-  kartennummer (Ganzzahl, automatisch hochzählen, Primärschlüssel)
-  besitzer_id (Ganzzahl)
-  Guthaben (DOUBLE)
-  passwort (Ganzzahl)




MySQL_2-2) Fehler im Listing finden

Korrigieren Sie die folgenden Listings und erproben Sie die Funktionsfähigkeit in phpmyadmin:

1. Zwei Fehler:

MySQL-Code
CREATE TABLE kunde_id INT PRIMARY KEY AUTO_INCREMENT, kunde_vorname VARCHAR(80), kunde_postleitzahl VARCHAR(5);  

2. Mehrere Fehler

MySQL-Code
CREATE TABLE kunde (kunde INT PRIMARY_KEY AUTO INCREMENT vorname VARCHAR nachname VARCHAR registrierungsdatum TIMESTAMP;  




MySQL_2-3) CREATE TABLE interpretieren

1. Erzeugen Sie in Excel eine Tabelle, die folgendem Befehl entspricht:

MySQL-Code
CREATE TABLE kunden (kunde_id INT AUTO_INCREMENT PRIMARY KEY, kunde_vorname VARCHAR(100), kunde_nachname VARCHAR(100), kunde_PLZ INT)  

2. Erzeugen Sie in Excel eine Tabelle, die folgendem Befehl entspricht:

MySQL-Code
CREATE TABLE fahrzeugtypen (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), typ VARCHAR(100), motorstaerke INT, verkaufspreis DOUBLE)  




MySQL_2-4) Aufbau einer Datentabelle

Betrachten Sie folgende Tabelle (Screenshot in der Datei 07mysql/mysql02-tabelle-richtig-falsch.png):

Datensatz: | id | name | postleitzahl
1 | 1 | Schmitt | 79200
2 | 4 | Müller | 54201
3 | 5 | Maier | 89221
4 | 9 | Hauser | 98177

Welche der folgenden Aussagen sind richtig, welche falsch?
1. Die Tabelle beinhaltet drei Datensätzen.
2. Die Tabelle beinhaltet vier Datensätze.
3. Die Tabelle beinhaltet einen Datensatz.
4. Man kann aus dieser Tabelle nicht ersehen, wie viele Datensätze sie beinhaltet.
5. Die Tabelle hat ein Feld.
6. Die Tabelle hat drei Felder.
7. Die Tabelle hat vier Felder.
8. Die einzelnen Zeilen entsprechen den Datensätzen.
9. Die einzelnen Zeilen entsprechen den Feldern.
10. Die einzelnen Spalten entsprechen den Datensätzen.
11. Die einzelne Spalten entsprechen den Feldern.
12. Wenn wir einen neuen Eintrag hinzufügen (z.B. Herrn Mauser mit der PLZ 65501), würde er als neuer "Datensatz" gespeichert.
13. Wenn wir einen neuen Eintrag hinzufügen (z.B. Herrn Mauser mit der PLZ 65501), würde er als neues "Feld" gespeichert.